헤드셋 extension package template 소개
com.easyar.sense.ext.hmdtemplate package는 headset extension development를 위한 example과 template을 제공합니다. 이는 SDK 구현이며 application developer를 위한 example도 포함합니다.
Template 내용
이 package의 구조는 Unity 권장 file layout을 따릅니다.
.
├── CHANGELOG.md
├── Documentation~
├── Editor
├── LICENSE.md
├── package.json
├── Runtime
└── Samples~
└── Combination_BasedOn_HMD
중요한 내용은 다음과 같습니다.
- Runtime: runtime platform assets를 저장하는 folder입니다. Template에서 가장 중요한 folder입니다.
- Samples~: package의 모든 example을 저장하는 folder입니다. downstream 사용을 위한 example을 포함하며 extension을 test하는 demo로 사용할 수 있습니다. 이 example을 제자리에서 개발하려면 folder 이름을
Samples로 변경해야 합니다. Client.Pack method는 새로운 release를 package할 때 자동으로Samples~로 이름을 변경합니다. - Editor: edit-time platform assets를 저장하는 folder입니다. 이 folder의 script는 주로 menu item을 만드는 데 사용됩니다.
- package.json: package의 manifest file입니다.
Template example 생성 과정
-
Hierarchyview에서:- 빈 곳을 right-click하고 menu
EasyAR Sense>Mega>AR Session (Mega Block Default Preset)를 통해 ARSession을 추가합니다. - **AR Session (EasyAR)**을 선택하고 right-click한 다음 menu
EasyAR Sense>Image Tracking>Frame Filter : Image Tracker를 통해 ImageTrackerFrameFilter를 session에 추가합니다. - **AR Session (EasyAR)**을 선택하고 right-click한 다음 menu
EasyAR Sense>SpatialMap>Frame Filter : Dense SpatialMap Builder를 통해 DenseSpatialMapBuilderFrameFilter를 session에 추가합니다. - **AR Session (EasyAR)**을 선택하고 right-click한 다음 menu
EasyAR Sense>SpatialMap>Frame Filter : Sparse SpatialMap Builder를 통해 SparseSpatialMapBuilderFrameFilter를 session에 추가합니다. - **AR Session (EasyAR)**을 선택하고 right-click한 다음 menu
EasyAR Sense>Extensions>Frame Source : HMD Template (keep it only)를 통해 HMD Template FrameSource를 추가하고 이것만 유지합니다.

- 빈 곳을 right-click하고 menu
-
Hierarchyview에서 빈 곳을 right-click하고 menuEasyAR Sense>Image Tracking>Target : Image Target를 통해 ImageTargetController를 session에 추가합니다.
위 구성을 완료하면
Sceneview에 표시되는 image는 gizmo입니다. 이 example에서는 quad를 통해 같은 image의 virtual object를 표시합니다.target 위에 표시할 virtual object 추가:

Motion tracking origin reference로 model 추가
이 model은 developer와 downstream user 모두에게 중요합니다. 이는 device motion tracking과 EasyAR algorithm을 decouple하는 데 사용됩니다.

Feature selection UI 추가

Startup 시 enable된 EasyAR feature를 끄고 UI switch를 통해 켜기
예를 들어 image tracking 기능은 startup 시 해당 component의 enable을 false로 설정하여 끌 수 있습니다.

그런 다음 UI switch handling을 추가합니다.

관련 항목
- 헤드셋이 EasyAR를 지원하도록 하기는 이 template을 사용해 새로운 headset extension package를 만드는 방법을 설명합니다
- 실행 검증(bring-up)은 이 template이 제공하는 example을 사용해 input extension의 정확성을 검증하는 방법을 설명합니다
- Extension package publish는 이 template을 기반으로 최종 packaging 및 distribution을 완료하는 방법을 설명합니다