Espacios de coordenadas en World Locking Tools para Unity
En última instancia, World Locking Tools para Unity (WLT) proporciona un sistema de coordenadas estable bloqueado en el mundo con una asignación configurable en el mundo físico.
Esta transformación del espacio de coordenadas global nativo de Unity (que es variable, no persistente y arbitrario) al espacio bloqueado en el mundo se produce en varios pasos. Cada espacio de coordenadas intermedio tiene un nombre.
Todos los nombres son arbitrarios hasta cierto punto. A continuación se indican los nombres de los espacios intermedios que se usan en la documentación y en el código de WLT:
Spongy Space
(espacio elástico): el espacio de coordenadas global de Unity que se obtendría sin WLT. Un objeto inmóvil en un espacio elástico (cuyas coordenadas no varían) se desviarán en relación con el mundo físico.
Play Space
(espacio de reproducción): transformación de posición o rotación de un espacio elástico. Se puede usar para implementar características como teletransportar.
Locked Space
(espacio bloqueado): el espacio bloqueado en el mundo que el motor FrozenWorld calcula y que WLT implementa. Un objeto inmóvil en un espacio bloqueado permanecerá fijo en relación con las características del mundo físico. Sin embargo, los valores numéricos de sus coordenadas son arbitrarios.
Pinned Space
(espacio marcado): transformación de un espacio bloqueado para proporcionar a las coordenadas una asignación deseada al mundo físico. Un objeto que tenga una posición (X, Y,Z) aparecerá en una posición conocida y predeterminada relativa a las características del mundo físico.
Frozen Space
(espacio inmovilizado): transformación de posición o rotación de un espacio marcado, lo que permite a la aplicación implementar una transformación arbitraria a la jerarquía de la cámara.
Para mayor comodidad, WorldLockingManager proporciona transformaciones entre todos estos espacios. Por ejemplo, la más útil de ellas es FrozenFromSpongy, una posición que se transforma de un espacio elástico en uno inmovilizado. Esto resulta útil al convertir coordenadas devueltas por las API nativas (que no tienen noción alguna de WLT y, por lo tanto, funcionan en un espacio elástico) en espacio inmovilizado.
Tenga en cuenta que estas conversiones no son necesarias al usar MRTK. Su espacio de coordenadas ya es un espacio inmovilizado.
Hay otras conversiones entre los distintos espacios disponibles en WorldLockingManager, pero no suelen ser necesarias.