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

相关主题