Hmd 확장 패키지 템플릿 소개
com.easyar.sense.ext.hmdtemplate 패키지는 hmd 확장 개발을 위한 샘플 및 템플릿을 제공합니다. 이는 SDK 구현체이며 애플리케이션 개발자를 위한 샘플을 포함합니다.
템플릿 내용
이 패키지의 구조는 Unity 권장 파일 레이아웃을 따릅니다:
.
├── CHANGELOG.md
├── Documentation~
├── Editor
├── LICENSE.md
├── package.json
├── Runtime
└── Samples~
└── Combination_BasedOn_HMD
주요 내용은 다음과 같습니다:
- Runtime: 런타임 플랫폼 에셋 폴더. 템플릿에서 가장 중요한 폴더입니다.
- Samples~: 패키지 내 모든 샘플이 포함된 폴더. 다운스트림에서 사용할 수 있는 샘플로 확장 테스트용 데모 역할을 합니다. 로컬 개발 시 폴더명을
Samples로 변경해야 합니다. Client.Pack 메서드는 새 릴리즈 패키징 시 자동으로Samples~로 이름을 변경합니다. - Editor: 에디터 플랫폼 에셋 폴더. 이 폴더의 스크립트는 주로 메뉴 아이템 생성에 사용됩니다.
- package.json: 패키지 매니페스트 파일.
템플릿 샘플 생성 과정
-
Hierarchy뷰에서:- 빈 공간 우클릭 →
EasyAR Sense>Mega>AR Session (Mega Block Default Preset)으로 ARSession 추가. - AR Session (EasyAR) 선택 후 우클릭 →
EasyAR Sense>Image Tracking>Frame Filter : Image Tracker로 ImageTrackerFrameFilter를 세션에 추가. - AR Session (EasyAR) 선택 후 우클릭 →
EasyAR Sense>SpatialMap>Frame Filter : Dense SpatialMap Builder로 DenseSpatialMapBuilderFrameFilter를 세션에 추가. - AR Session (EasyAR) 선택 후 우클릭 →
EasyAR Sense>SpatialMap>Frame Filter : Sparse SpatialMap Builder로 SparseSpatialMapBuilderFrameFilter를 세션에 추가. - AR Session (EasyAR) 선택 후 우클릭 →
EasyAR Sense>Extensions>Frame Source : HMD Template (keep it only)로 HMD Template FrameSource 하나만 추가 및 유지.

- 빈 공간 우클릭 →
-
Hierarchy뷰에서 빈 공간 우클릭 →EasyAR Sense>Image Tracking>Target : Image Target로 ImageTargetController를 세션에 추가.
구성 완료 후
Scene뷰에 표시되는 이미지는 gizmo입니다. 이 샘플에서는 동일한 이미지를 표시하는 quad가 가상 오브젝트로 사용됩니다.타겟 위에 표시할 가상 오브젝트 추가:

모션 트래킹 원점 참조용 모델 추가
이 모델은 디바이스 모션 트래킹과 EasyAR 알고리즘의 디커플링에 중요하며 개발자와 다운스트림 사용자 모두에게 유용합니다.

기능 선택 UI 추가

시작 시 EasyAR 기능 비활성화 및 UI 토글로 제어
예를 들어 이미지 트래킹 기능은 해당 컴포넌트의 enable을 false로 설정하여 시작 시 비활성화할 수 있습니다:

이후 UI 토글 핸들러 추가:

관련 주제
- hmd에 EasyAR 지원 추가: 이 템플릿을 사용하여 새 hmd 확장 패키지를 생성하는 방법 설명
- 실행 검증(bring-up): 템플릿 샘플을 활용한 입력 확장 정확성 검증 방법
- 확장 패키지 배포: 이 템플릿 기반 최종 패키징 및 배포 방법