Share via


SpacePin 类

定义

用于将世界锁定空间固定在单个参考点的组件帮助程序。

public class SpacePin : UnityEngine.MonoBehaviour
type SpacePin = class
    inherit MonoBehaviour
Public Class SpacePin
Inherits MonoBehaviour
继承
UnityEngine.MonoBehaviour
SpacePin
派生

注解

此组件捕获其 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()

用于将世界锁定空间固定在单个参考点的组件帮助程序。

适用于