- 모든 컨트롤러 에디터를 IMGUI → UI Toolkit(UXML/USS)으로 전환 (Camera, Item, Event, Avatar, System, StreamDeck, OptiTrack, Facial) - StreamingleCommon.uss 공통 테마 + 개별 에디터 USS 스타일시트 - SystemController 서브매니저 분리 (OptiTrack, Facial, Recording, Screenshot 등) - 런타임 컨트롤 패널 (ESC 토글, 좌측 오버레이, 150% 스케일) - 웹 대시보드 서버 (StreamingleDashboardServer) + 리타게팅 통합 - 설정 도구(StreamingleControllerSetupTool) UXML 재작성 + 원클릭 설정 - SimplePoseTransfer UXML 에디터 추가 - 전체 UXML 한글화 + NanumGothic 폰트 적용 - Streamingle.Debug → Streamingle.Debugging 네임스페이스 변경 (Debug.Log 충돌 해결) - 불필요 코드 제거 (rawkey.cs, RetargetingHTTPServer, OptitrackSkeletonAnimator 등) Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
54 lines
2.4 KiB
Plaintext
54 lines
2.4 KiB
Plaintext
<ui:UXML xmlns:ui="UnityEngine.UIElements">
|
|
<Style src="StreamingleControlPanel.uss"/>
|
|
<ui:VisualElement name="panel-root" class="panel-root">
|
|
|
|
<!-- Header -->
|
|
<ui:VisualElement name="header" class="header">
|
|
<ui:Label text="STREAMINGLE" class="panel-title"/>
|
|
<ui:Label text="ESC" class="esc-badge"/>
|
|
</ui:VisualElement>
|
|
|
|
<!-- Tab Bar -->
|
|
<ui:VisualElement name="tab-bar" class="tab-bar">
|
|
<ui:Button name="btn-camera" text="Camera" class="cat-btn"/>
|
|
<ui:Button name="btn-item" text="Item" class="cat-btn"/>
|
|
<ui:Button name="btn-event" text="Event" class="cat-btn"/>
|
|
<ui:Button name="btn-avatar" text="Avatar" class="cat-btn"/>
|
|
<ui:Button name="btn-system" text="System" class="cat-btn"/>
|
|
</ui:VisualElement>
|
|
|
|
<!-- Content -->
|
|
<ui:VisualElement name="content" class="content">
|
|
<ui:Label name="cat-title" text="" class="cat-title"/>
|
|
<ui:Label name="cat-desc" text="" class="cat-desc"/>
|
|
<ui:ScrollView name="action-list" class="action-list"/>
|
|
</ui:VisualElement>
|
|
|
|
<!-- Status Bar -->
|
|
<ui:VisualElement name="status-bar" class="status-bar">
|
|
<ui:VisualElement class="status-group">
|
|
<ui:Label text="WS" class="status-label"/>
|
|
<ui:VisualElement name="ws-dot" class="status-dot"/>
|
|
<ui:Label name="ws-value" text="0" class="status-value"/>
|
|
</ui:VisualElement>
|
|
<ui:VisualElement class="status-group">
|
|
<ui:Label text="REC" class="status-label"/>
|
|
<ui:VisualElement name="rec-dot" class="status-dot"/>
|
|
</ui:VisualElement>
|
|
<ui:VisualElement class="status-group">
|
|
<ui:Label text="OT" class="status-label"/>
|
|
<ui:VisualElement name="optitrack-dot" class="status-dot"/>
|
|
</ui:VisualElement>
|
|
<ui:VisualElement class="status-group">
|
|
<ui:Label text="FC" class="status-label"/>
|
|
<ui:Label name="facial-value" text="0" class="status-value"/>
|
|
</ui:VisualElement>
|
|
<ui:VisualElement class="status-group">
|
|
<ui:Label text="RT" class="status-label"/>
|
|
<ui:VisualElement name="retargeting-dot" class="status-dot"/>
|
|
</ui:VisualElement>
|
|
</ui:VisualElement>
|
|
|
|
</ui:VisualElement>
|
|
</ui:UXML>
|