개발 완료
This commit is contained in:
@@ -1,5 +1,43 @@
|
||||
<!--
|
||||
ISOPModelView.uxml - 3D 모델 뷰어 레이아웃
|
||||
|
||||
[개요]
|
||||
glTF/glb 3D 모델을 렌더링하는 뷰어의 UI 레이아웃입니다.
|
||||
RenderTexture로 오프스크린 렌더링된 3D 모델을 배경으로 표시합니다.
|
||||
|
||||
[UI 구조]
|
||||
Root
|
||||
├── render-container - 3D 렌더링이 표시되는 영역
|
||||
│ (RenderTexture가 이 요소의 배경으로 설정됨)
|
||||
└── expand-btn - 모델 뷰 확장 버튼 (전체화면)
|
||||
|
||||
[렌더링 방식]
|
||||
1. ISOPModelView.cs에서 전용 카메라(ISOPModelViewCamera) 생성
|
||||
2. 카메라가 Layer 6의 3D 모델을 RenderTexture로 렌더링
|
||||
3. RenderTexture를 render-container의 배경으로 설정
|
||||
4. 매 프레임 MarkDirtyRepaint()로 UI 갱신
|
||||
|
||||
[마우스 조작]
|
||||
- 가운데 버튼 드래그: 카메라 이동 (Pan)
|
||||
- 오른쪽 버튼 드래그: 모델 회전 (Orbit)
|
||||
- 마우스 휠: 확대/축소 (Zoom)
|
||||
|
||||
[연관 파일]
|
||||
- ISOPModelView.uss : 스타일시트
|
||||
- ISOPModelView.cs : C# 컨트롤러 (렌더링, 마우스 조작)
|
||||
|
||||
[사용되는 리소스]
|
||||
- SHI/Images/btn_expand_36 : 확장 버튼 이미지
|
||||
-->
|
||||
<ui:UXML xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ui="UnityEngine.UIElements" xmlns:uie="UnityEditor.UIElements" noNamespaceSchemaLocation="../../../../../UIElementsSchema/UIElements.xsd" editor-extension-mode="False">
|
||||
<Style src="project://database/Assets/Resources/SHI/Modal/ISOP/ISOPModelView.uss?fileID=7433441132597879392&guid=d8f71926a38e1884c96841b7f9eb7fd2&type=3#ISOPModelView" />
|
||||
|
||||
<!-- 3D 렌더링 컨테이너: RenderTexture가 배경으로 표시됨
|
||||
- flex-grow: 1로 부모 영역 전체 채움
|
||||
- overflow: hidden으로 내용 잘림 방지 -->
|
||||
<ui:VisualElement name="render-container" style="flex-grow: 1; height: 100%; min-width: 0; overflow: hidden;" />
|
||||
|
||||
<!-- 확장 버튼: 모델 뷰를 전체 화면으로 확장
|
||||
- 오른쪽 상단에 위치 -->
|
||||
<ui:Button name="expand-btn" style="position: absolute; top: 20px; right: 10px; width: 36px; height: 36px; margin-top: 0; margin-right: 0; margin-bottom: 0; margin-left: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; padding-left: 0; border-top-width: 0; border-right-width: 0; border-bottom-width: 0; border-left-width: 0; background-color: rgba(255, 255, 255, 0); background-image: resource('SHI/Images/btn_expand_36');" />
|
||||
</ui:UXML>
|
||||
|
||||
Reference in New Issue
Block a user