Table of Contents

頭顯擴展包模板簡介

com.easyar.sense.ext.hmdtemplate package 是為頭顯擴展開發提供的範例和模板。它是一個 SDK 的實現,並且包含了給應用開發者的範例。

模板內容

這個 package 的包結構遵循了 Unity 推薦的文件佈局

.
├── CHANGELOG.md
├── Documentation~
├── Editor
├── LICENSE.md
├── package.json
├── Runtime
└── Samples~
    └── Combination_BasedOn_HMD

其中一些比較重要的內容如下:

  • Runtime:存放運行時平台資產的文件夾。這是模板中最重要的文件夾。
  • Samples~:存放 package 中所有範例的文件夾。它包含給下游使用的範例,可以用作測試擴展的 demo。為了原地開發這個範例,需要修改文件夾名為 Samples 。使用 Client.Pack 方法會在打包一個新發佈時將其自動重新命名為 Samples~
  • Editor:存放編輯時平台資產的文件夾。這個文件夾的腳本主要用於創建功能表項。
  • package.json:package 的清單文件。

模板範例的創建過程

  1. 添加 AR Session

    Hierarchy 檢視中:

    • 空白 處點擊右鍵,通過功能表 EasyAR Sense > Mega > AR Session (Mega Block Default Preset) 添加 ARSession
    • 選中 AR Session (EasyAR) 並點擊右鍵,通過功能表 EasyAR Sense > Image Tracking > Frame Filter : Image Tracker 添加一個 ImageTrackerFrameFilter 到 session 中。
    • 選中 AR Session (EasyAR) 並點擊右鍵,通過功能表 EasyAR Sense > SpatialMap > Frame Filter : Dense SpatialMap Builder 添加一個 DenseSpatialMapBuilderFrameFilter 到 session 中。
    • 選中 AR Session (EasyAR) 並點擊右鍵,通過功能表 EasyAR Sense > SpatialMap > Frame Filter : Sparse SpatialMap Builder 添加一個 SparseSpatialMapBuilderFrameFilter 到 session 中。
    • 選中 AR Session (EasyAR) 並點擊右鍵,通過功能表 EasyAR Sense > Extensions > Frame Source : HMD Template (keep it only) 添加並僅保留 HMD Template 這一個 FrameSource

    alt text

  2. 添加 ImageTargetController

    Hierarchy 檢視中,在 空白 處點擊右鍵,通過功能表 EasyAR Sense > Image Tracking > Target : Image Target 添加一個 ImageTargetController 到 session 中。

    配置 ImageTargetController

    alt text

    在完成上述配置之後,Scene 檢視中顯示的圖像是 gizmo。這個範例中通過一個 quad 來顯示同一圖像的虛擬物體。

    添加顯示在 target 上面的虛擬物體:

    alt text

  3. 添加一個模型作為運動跟踪原點參考

    這個模型對開發者以及下游用戶都很重要,它用於解耦設備運動跟踪和 EasyAR 演算法。

    alt text

  4. 添加功能選擇的 UI

    alt text

  5. 關閉啟動時啟用的 EasyAR 功能,並通過 UI 開關來打開它們

    例如,圖像跟踪的功能在啟動時可以關閉,只需要設置對應元件的 enable 為 false 即可:

    alt text

    然後添加 UI 開關處理:

    alt text

相關主題