Hololens 实现全息体验的一个特性就是场景保持。当用户离开场景或关闭应用时,场景中的全息图会被保存在所放置的位置,当用户回到场景或重新打开应用时,能够准确的还原之前场景内的全息内容。
World Anchor(空间锚)提供了一种能够将物体保留在特定位置和旋转状态上的方法,以此来保证全息对象的稳定性(即静止参考框架),也通过它来实现场景保持。
脚本WorldAnchorStore.cs 是实现空间锚特性的关键 API,为了能够真正保持一个全息对象,通常为根 GameObject 添加空间锚,同时对其子 GameObject 也附上具有相对位置偏移的空间锚组件。
一、实例程序
(一)、 用 unity2018.4.9 vs2017 创建一个新的 Unity 项目 VoiceDemo,初始化项目:
1.导入 MRTK 包 (版本 HoloToolkit-Unity-2017.4.2.0)
2.应用项目设置为 MR 项目 (一键设置成为可以部署的环境)
3.使用 HoloLensCamera 替代默认相机
4.添加 CursorWithFeedback (识别并反馈手势的光标控件)
5.添加 InputManager (作为输入源管理器,管理 gaze,gesture,speech等)
6.设置 InputManager 的 SimpleSinglePointerSelector 脚本的 Cursor 属性为添加的 CursorWithFeedback (添加手势源到inputmanger)
7.添加一个 Cube 改动z:4
最终 Hierarchy 结构如下:
(二)、编写脚本 CubeCommand.cs 并将其添加到 Cube 上。
当添加脚本遇