IAlignmentManager
IAlignmentManager 界面提取转换世界锁定空间并旋转该空间的服务,使其基于一组离散的空间大头针与物理世界对齐。
专门介绍空间大头针的文章中详细介绍了对齐的概念。
通常不要求应用程序与 IAlignmentManager 交互。 确切地说,提供了帮助程序组件类 SpacePin 以及从它派生的组件来处理涉及的最少簿记。
持久性的注意事项
IAlignmentManager 在加载后提供回调通知。 注册加载通知的任何对象都应在被销毁之前取消注册。 对于 Unity 对象,可在 OnDestroy 中完成此操作。
除了显式的 Save() 和 Load() 成员函数外,IAlignmentManager 界面还以 RestoreAlignmentAnchor 的形式提供持久性挂钩。
RestoreAlignmentAnchor 在其数据库中搜索足够的信息来重新创建已命名的对齐定位点(很可能已在之前的会话中创建并保存了这些定位点)。 如果成功,会返回对此会话有效的 AnchorId,且调用方可拥有此会话。 如果出于任何原因无法还原对齐定位点,将返回无效的 AnchorId,调用方应假设尚未创建(且未保存)命名定位点。
加载后回调的作用是:建议一个恰当的时间来核查数据库中当前是否提供了已命名的对齐定位点。