7.0 KiB (Stored with Git LFS)
7.0 KiB (Stored with Git LFS)
StreamDock 플러그인 디버깅 방법
중요: 반드시 개발자 콘솔을 열어서 확인하세요!
StreamDock은 Electron 기반이므로 Chrome 개발자 도구로 디버그할 수 있습니다.
방법 1: 키보드 단축키 (가장 빠름)
-
StreamDock 프로그램이 실행 중인 상태에서
-
StreamDock 창을 클릭해서 포커스를 맞춘 후
-
다음 키를 눌러보세요:
- F12
- Ctrl + Shift + I
- Ctrl + Shift + J (콘솔 직접 열기)
-
개발자 도구가 열리면 Console 탭을 클릭
방법 2: 로그 파일 확인
로그가 파일로 저장될 수도 있습니다:
%APPDATA%\Hotspot\StreamDock\logs\
또는 이 배치 파일 실행:
view-logs.bat
디버그 출력 확인 방법
1. 버튼을 처음 추가할 때 (willAppear)
마커 버튼을 추가하면 이렇게 나와야 합니다:
============================================
👀 버튼 나타남 이벤트
🔍 Context: <컨텍스트 ID>
🔍 Action UUID: com.mirabox.streamingle.optitrack_marker_toggle
⚙️ 초기 설정: {}
✅✅✅ MARKER BUTTON DETECTED ✅✅✅
✅ This is the OptiTrack Marker Toggle button!
✅ When clicked, it should send: toggle_optitrack_markers
🎯 최종 actionType: optitrack_marker_toggle
💾 설정 저장 완료
============================================
카메라 버튼을 추가하면 이렇게 나옵니다:
============================================
👀 버튼 나타남 이벤트
🔍 Context: <컨텍스트 ID>
🔍 Action UUID: com.mirabox.streamingle
⚙️ 초기 설정: {}
📹 카메라 컨트롤러 등록 (기본값)
📹 This button will send camera switch messages
🎯 최종 actionType: camera
💾 설정 저장 완료
============================================
2. 버튼을 클릭할 때 (keyDown)
마커 버튼을 클릭하면:
╔════════════════════════════════════════╗
║ BUTTON CLICKED - DEBUG INFO ║
╠════════════════════════════════════════╣
Context: <컨텍스트 ID>
ActionType: optitrack_marker_toggle
All Settings: {"actionType":"optitrack_marker_toggle","currentState":0}
╚════════════════════════════════════════╝
➡️ Routing to: MARKER TOGGLE handler
Will send: {"type":"toggle_optitrack_markers"}
🎯 OptiTrack 마커 토글 실행
📤 Unity에 OptiTrack 마커 토글 요청 전송: {"type":"toggle_optitrack_markers"}
🔍 Unity 연결 상태: true
🔍 Unity 소켓 상태: true
✅ 메시지 전송 완료
🎨 버튼 상태 업데이트: OFF
카메라 버튼을 클릭하면:
╔════════════════════════════════════════╗
║ BUTTON CLICKED - DEBUG INFO ║
╠════════════════════════════════════════╣
Context: <컨텍스트 ID>
ActionType: camera
All Settings: {"actionType":"camera","camera_index":0}
╚════════════════════════════════════════╝
➡️ Routing to: CAMERA handler
Will send: {"type":"switch_camera","data":{...}}
문제 진단
증상: Unity에서 switch_camera 메시지를 받음
원인: 잘못된 버튼을 클릭하고 있습니다!
확인 방법:
- StreamDock 개발자 콘솔 열기
- 버튼 클릭
ActionType:이 뭐라고 나오는지 확인
결과 해석:
ActionType: camera→ 카메라 버튼입니다. 마커 버튼이 아닙니다!ActionType: optitrack_marker_toggle→ 올바른 마커 버튼입니다!
증상: 버튼 타이틀이 비어있음
원인 1: 버튼을 잘못 추가했습니다
- 카메라 버튼은 Unity에서 데이터를 받아와서 타이틀을 업데이트합니다
- Unity가 연결되지 않으면 타이틀이 비어있을 수 있습니다
원인 2: 마커 버튼이 제대로 추가되지 않았습니다
- 개발자 콘솔에서
✅✅✅ MARKER BUTTON DETECTED메시지를 확인하세요 - 이 메시지가 없으면 버튼이 제대로 등록되지 않은 것입니다
StreamDock에서 올바른 마커 버튼 추가하는 방법
- StreamDock 소프트웨어 열기
- 왼쪽 액션 목록에서 찾기:
- "OptiTrack Marker Toggle" 이라는 이름의 액션
- 아이콘: optitrack_marker_icon.png 이미지
- 이 액션을 빈 버튼 슬롯으로 드래그
- 추가되면 개발자 콘솔에서
✅✅✅ MARKER BUTTON DETECTED확인 - 버튼 타이틀이 "마커\nON" 으로 표시되는지 확인
잘못된 버튼을 추가한 경우
잘못 추가한 버튼은:
- 길게 눌러서 삭제
- 올바른 "OptiTrack Marker Toggle" 액션 다시 추가
- 개발자 콘솔에서 버튼 등록 메시지 확인
플러그인 재배포 후 확인 사항
cd Streamdeck
deploy-plugin.bat
배포 후:
- StreamDock이 자동으로 재시작됨
- 기존 버튼들은 그대로 유지됨
- 새 버튼 추가 시 새로운 코드가 적용됨
중요: 기존에 추가된 버튼은 설정이 그대로 유지됩니다!
- 배포 전에 추가한 마커 버튼은 계속 작동함
- 배포 전에 추가한 카메라 버튼도 계속 카메라 버튼으로 작동함
배치 파일들
deploy-plugin.bat
플러그인 자동 배포:
- 관리자 권한 자동 획득
- StreamDock 종료
- 플러그인 파일 복사
- StreamDock 재시작
- 2초 후 자동으로 창 닫힘
view-logs.bat
로그 파일 빠른 확인:
- 로그 디렉토리 열기
- 최신 로그 파일을 Notepad로 열기
개발자 콘솔이 안 열리는 경우
StreamDock 버전이나 설정에 따라 개발자 도구가 비활성화되어 있을 수 있습니다.
대안 1: 로그 파일 확인
view-logs.bat
대안 2: Unity 콘솔만으로 판단
- Unity에서 받은 메시지 타입 확인
switch_camera→ 카메라 버튼toggle_optitrack_markers→ 마커 버튼 (정답!)
대안 3: 디버그 빌드 일부 Electron 앱은 프로덕션 빌드에서 개발자 도구를 막아둡니다. StreamDock 설정 파일을 확인해보세요:
%APPDATA%\Hotspot\StreamDock\
정리
현재 문제:
- ✅ Unity는 메시지를 정상적으로 받고 있음
- ✅ 플러그인 코드는 정상 작동 중
- ❌ 잘못된 버튼을 클릭하고 있음
해결 방법:
- StreamDock 개발자 콘솔 열기 (F12)
- 버튼 클릭
- ActionType 확인
- 만약 camera라면 → 잘못된 버튼, 삭제하고 "OptiTrack Marker Toggle" 액션 추가
- 만약 optitrack_marker_toggle이라면 → 올바른 버튼!