World Locking Tools for Unity 中的坐标空间

World Locking Tools for Unity(简称 WLT)最终提供了一个稳定的世界锁定坐标系以及对物理世界的可配置的映射。

从不断变化、非持久的任意本机 Unity 全局坐标空间到世界锁定空间的转换是逐步发生的。 每个中间坐标空间各有一个名称。

在某种程度上讲,所有名称都具有一些任意性。 下面是 WLT 文档和代码中使用的中间空间的名称:

Spongy Space - 不使用 WLT 时将获得的 Unity 全局坐标空间。 Spongy Space 中的静止对象(坐标不变)相对于物理世界而言会发生偏离。

Play Space - Spongy Space 的位置/旋转转换。 它可用于实现传送等功能。

Locked Space - 由 FrozenWorld 引擎计算出且由 WLT 实现的世界锁定空间。 Locked Space 中的静止对象相对于物理世界中的特征保持固定。 但它的坐标数值是任意的。

Pinned Space - Locked Space 的一种变换,为坐标提供一个对物理世界的所需映射。 位置为 (X,Y,Z) 的对象将出现在一个相对于物理世界功能来说已预先确定的已知位置。

Frozen Space - Pinned Space 的位置/旋转变换,使应用程序能向相机层次结构应用任意转换。

为方便起见,WorldLockingManager 提供上述所有空间之间的变换。 例如,其中最有用的是 FrozenFromSpongy,这种姿势从 Spongy Space 转换到 Frozen Space。 将本机 API 返回的坐标转换到 Frozen Space 中时(没有 WLT 的概念,因此在 Spongy Space 中进行操作),这非常有用。

请注意,使用 MRTK 时,不需要这样的转换。 因为其坐标空间已经是 Frozen Space。

WorldLockingManager 上提供了各种空间之间的其他转换,但我们通常不需要这些转换。

另请参阅