SpacePin 类
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
用于将世界锁定空间固定在单个参考点的组件帮助程序。
public class SpacePin : UnityEngine.MonoBehaviour
type SpacePin = class
inherit MonoBehaviour
Public Class SpacePin
Inherits MonoBehaviour
- 继承
-
UnityEngine.MonoBehaviourSpacePin
- 派生
注解
此组件捕获其 gameObject 的初始姿势,然后捕获第二个姿势。 然后,它将该对添加到 WorldLocking Alignment Manager。 然后,经理根据当前头部姿势,在所有此类添加的图钉之间协商,以生成一个帧到帧的映射,以对齐冻结的空间,即Unity的全局空间,以便引脚尽可能匹配。 另一种表述方式是:给定任意姿势 (“建模姿势”) ,并且姿势以某种方式与现实世界对齐 (“世界锁定姿势”) ,对相机应用一个更正,使具有建模姿势坐标的虚拟对象将叠加在现实世界中,其位置和方向由锁定的姿势描述。 对于此组件,锁定姿势必须通过以下三个 API 之一传入: SetFrozenPose(Pose) 输入姿势位于冻结空间中,其中包括固定。 SetSpongyPose(Pose) 在 Spongy Space 中使用输入姿势,这是相机父级的空间,与相机移动的空间相同,本机 API 以 ((例如 XR) )返回值。 SetLockedPose(Pose) 具有锁定空间中的输入姿势,这是由冻结世界引擎 DLL 稳定但不包括固定的空间。 请注意,由于冻结空间由 AlignmentManager 移动,因此使用同一 Pose p 两次调用 SetFrozenPose (p) 可能是一个错误,因为 Pose p 将在第一次调用后引用不同的位置。
构造函数
SpacePin() |
用于将世界锁定空间固定在单个参考点的组件帮助程序。 |
属性
AlignmentManager |
用于从脚本替代 AlignmentManager 的访问器。 |
AnchorId |
anchorId 的此包装器是因为 anchorId 必须存储为 ulong,ulong 是 AnchorId 枚举的基类。 Unity仅支持基于 int 的枚举,因此会针对基于 ulong 的 AnchorId 的序列化等进行投诉。 |
AnchorName |
提供唯一的定位点名称。 这用于持久性。 |
FragmentId |
此引脚所属的片段的 ID。 |
LockedPose |
派生类的世界锁定姿势的访问器。 |
Manager |
从派生类对管理器依赖项进行只读访问。 |
ModelingPoseGlobal |
第一对姿势提交到对齐管理器进行对齐。 |
ModelPositionSource |
在何处查找目标上的模型空间位置。 转换是可取的,但如果转换是烘焙的,则呈现器或碰撞器可能更合适。 |
PinActive |
此空间引脚是否处于活动使用固定空间中 |
RestorePoseLocal |
在操作 ((如果有任何) )后还原的姿势。 |
方法
ExtractModelPose() |
用于将世界锁定空间固定在单个参考点的组件帮助程序。 |
ExtractModelPoseFromCollider() |
用于将世界锁定空间固定在单个参考点的组件帮助程序。 |
ExtractModelPoseFromRenderer() |
用于将世界锁定空间固定在单个参考点的组件帮助程序。 |
ExtractModelPoseFromTransform() |
用于将世界锁定空间固定在单个参考点的组件帮助程序。 |
ForceAttachment() |
确保存在附件,并且其定位为最新。 |
GetModelPoseFromGlobalPosition(Vector3) |
用于将世界锁定空间固定在单个参考点的组件帮助程序。 |
OnDestroy() |
销毁时,取消注册已加载的事件。 |
OnLocationUpdate(Pose) |
重新调整操作的回调。 将调整转换应用于锁定姿势。 |
PushAlignmentData(IAlignmentManager) |
将来自此点的数据传达给对齐管理器。 |
ReleaseAttachment() |
释放之前创建的任何附件点。 |
Reset() |
返回初始状态,包括从对齐管理器中删除自项目。 |
ResetModelingPose() |
将建模姿势重置为当前转换。 |
RestoreOnLoad() |
如果已保留此预设,则对对齐管理器的数据库检查的通知进行回调,如果已保留,则将其还原为操作。 |
SendAlignmentData(IAlignmentManager) |
通知经理所有必需的更新都已提交并已准备好进行处理。 |
SetFrozenPose(Pose) |
将姿势转换为锁定的空间并传递。 |
SetLockedPose(Pose) |
记录锁定的姿势,并将数据推送到管理器。 |
SetSpongyPose(Pose) |
将姿势转换为锁定的空间并传递。 |
Start() |
用于将世界锁定空间固定在单个参考点的组件帮助程序。 |