AlignSubtree 类
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
使用独立的 AlignmentManager 来对齐特定子树(独立于场景的其余部分)的脚本。
public class AlignSubtree : UnityEngine.MonoBehaviour
type AlignSubtree = class
inherit MonoBehaviour
Public Class AlignSubtree
Inherits MonoBehaviour
- 继承
-
UnityEngine.MonoBehaviourAlignSubtree
注解
由此对齐的子树将保持由 WorldLockingManager 独立全局锁定的世界锁定。 此脚本演示如何创建和管理独立的 AlignmentManager,并将其对齐方式应用于场景中的特定子树 (子树) 。 由 WorldLockingManager 拥有和管理的 global AlignmentManager 将其对齐应用于全局Unity坐标空间 (冻结空间) 。 此处希望使用相同的空间固定功能将虚拟模型 (子树) 的某些部分固定到物理世界,而不会影响全局空间。 若要执行此操作,需要执行几个步骤:1。 Create一个新的本地拥有的 AlignmentManager (不同于 WorldLockingManager) 拥有的 AlignmentManager。 请参阅 Microsoft.MixedReality.WorldLocking.Core.AlignSubtree.CheckInternalWiring。 2. 指向所需的 SpacePin 以使用本地拥有的 AlignmentManager (它们默认使用全局) 。 请参阅 Microsoft.MixedReality.WorldLocking.Core.AlignSubtree.OnEnable。 3. 使用本地 AlignmentManager 计算更正姿势,并将其应用于子树。 请参阅 Microsoft.MixedReality.WorldLocking.Core.AlignSubtree.Update。 在点 2.,有许多合理的收获方法,SpacePin 应使用此本地 AlignmentManager,此处使用的方法,调用 GetComponentsInChildren 就是其中一种方式。
构造函数
AlignSubtree() |
使用独立的 AlignmentManager 来对齐特定子树(独立于场景的其余部分)的脚本。 |
字段
subTree |
要对齐的转换。 如果未设置,将对齐 this.transform。 |
属性
AlignmentManager |
拥有独立的 AlignmentManager。 |
CollectFromTree |
从此子树收集所有 SpacePins 进行管理。 |
Orienter |
隐式方向 SpacePins 的可选定向器。 如果为 null,将在子树中搜索它。 |
SaveFileName |
用于保存到和从中加载的文件名。 默认为 gameObject 的名称。 对子文件夹使用正斜杠“/”。 |
方法
AddOwnedPin(SpacePin) |
将图钉显式添加到拥有的固定项列表。 |
ClaimPinOwnership() |
每当将引脚添加到拥有列表时,都应调用此名称。 |
ClearOwnedPins() |
清除自有空间固定的整个列表。 |
Load() |
用于从存储区加载对齐管理器的显式命令。 |
RemoveOwnedPin(SpacePin) |
从拥有的固定列表中删除特定图钉。 |
Save() |
用于将对齐管理器保存到存储的显式命令。 |
事件
OnAlignManagerCreated |
在整个 CheckInternalWiring 中创建新的 AlignmentManager 时触发 |