Sistemas de coordenadas
En su núcleo, las aplicaciones de realidad mixta colocan hologramas en su mundo que parecen y suenan objetos reales. Esto implica colocar y orientar con precisión esos hologramas en lugares significativos del mundo, ya sea su sala física o un reino virtual que haya creado. Windows proporciona varios sistemas de coordenadas reales para expresar geometría, que se conocen como sistemas de coordenadas espaciales. Puede usar estos sistemas para razonar sobre la posición del holograma, la orientación, el rayo de mirada o las posiciones de las manos.
Compatibilidad con dispositivos
Característica | HoloLens (1.ª generación) | HoloLens 2 | Cascos envolventes |
Marco estacionario de referencia | ✔️ | ✔️ | ✔️ |
Marco adjunto de referencia | ✔️ | ✔️ | ✔️ |
Fotograma de fase de referencia | Todavía no se admite | Todavía no se admite | ✔️ |
Delimitadores espaciales | ✔️ | ✔️ | ✔️ |
Asignación espacial | ✔️ | ✔️ | ❌ |
Descripción de la escena | ❌ | ✔️ | ❌ |
Escalas de la experiencia de realidad mixta
Puede diseñar aplicaciones de realidad mixta para una amplia gama de experiencias de usuario, desde visores de vídeo de 360 grados mediante la orientación de auriculares hasta aplicaciones y juegos a escala mundial completos mediante asignación espacial y delimitadores espaciales:
Escala de la experiencia | Requisitos | Experiencia de ejemplo |
---|---|---|
Solo orientación | Orientación del auricular (alineada con la gravedad) | Visor de vídeo de 360° |
Escala asentada | Encima de la posición de los auriculares más en función de la posición cero | Juego de carreras o simulador espacial |
Escala permanente | Origen del piso de fase superior | Juego de acción donde te agachas y esquivas en su lugar |
Escala de sala | Polígono de límites de fase superior | Juego de rompecabezas donde caminar alrededor del rompecabezas |
Escala mundial | Delimitadores espaciales (y, normalmente, asignación espacial) | Juego con enemigos procedentes de tus paredes reales, como RoboRaid |
Las escalas de experiencia anteriores siguen un modelo de "anidamiento de muñecas". El principio de diseño clave para Windows Mixed Reality es el siguiente: un auricular determinado admite aplicaciones creadas para una escala de experiencia de destino y todas las escalas menores.
Seguimiento de 6DOF | Suelo definido | Seguimiento de 360° | Límites definidos | Delimitadores espaciales | Experiencia máxima |
---|---|---|---|---|---|
No | - | - | - | - | Solo orientación |
Sí | No | - | - | - | Sentado |
Sí | Sí | No | - | - | De pie: hacia delante |
Sí | Sí | Sí | No | - | De pie - 360° |
Sí | Sí | Sí | Sí | No | Sala |
Sí | Sí | Sí | Sí | Sí | Mundo |
El marco de referencia stage aún no se admite en HoloLens. Actualmente, una aplicación a escala de sala en HoloLens debe usar la asignación espacial o la comprensión de la escena para encontrar el suelo y las paredes del usuario.
Sistemas de coordenadas espaciales
Todas las aplicaciones de gráficos 3D usan sistemas de coordenadas cartesianas para razonar sobre las posiciones y las orientaciones de los objetos virtuales. Estos sistemas de coordenadas establecen tres ejes perpendiculares: X, Y y Z. Cada objeto que agregue a una escena tendrá una posición XYZ en su sistema de coordenadas. Windows llama a un sistema de coordenadas que tiene un significado real en el mundo físico un sistema de coordenadas espaciales , que expresa sus valores de coordenadas en metros. Esto significa que los objetos situados dos unidades separadas en el eje X, Y o Z aparecerán dos metros separados entre sí cuando se representen en realidad mixta. Sabiendo esto, puede representar fácilmente objetos y entornos a escala real.
En general, los sistemas de coordenadas cartesianas se conocen como "diestros" o "zurdos", ya que se pueden usar posiciones de la mano para indicar las direcciones de los ejes XYZ. En ambos sistemas de coordenadas, el eje X positivo apunta a la derecha y el eje Y positivo apunta hacia arriba. La diferencia entre los dos es que, en el sistema de coordenadas de la derecha, el eje Z apunta hacia usted, mientras que en el sistema de coordenadas de la izquierda, el eje Z apunta hacia usted.
Los sistemas de coordenadas espaciales en Windows (y, por lo tanto, Windows Mixed Reality) siempre son diestros.
[! NOTAS]
- Unity y Unreal usan el sistema de coordenadas izquierdo.
- Aunque las coordenadas izquierdas y diestros son los sistemas más comunes, hay otros sistemas de coordenadas que se usan en el software 3D. Por ejemplo, no es inusual que las aplicaciones de modelado 3D usen un sistema de coordenadas en el que el eje Y apunte hacia el visor o lejos de él y el eje Z apunte hacia arriba.
Creación de una experiencia de escala de solo orientación o sentado
La clave para la representación holográfica es cambiar la vista de la aplicación de sus hologramas cada fotograma a medida que el usuario se mueve, para que coincida con el movimiento previsto de la cabeza. Puede crear experiencias de escala asentada que respeten los cambios en la posición principal y la orientación de la cabeza del usuario mediante un marco estacionario de referencia.
Algunos contenidos deben omitir las actualizaciones de posición principal, manteniéndose fijos en un encabezado elegido y a distancia del usuario siempre. El ejemplo principal es el vídeo de 360 grados: dado que el vídeo se captura desde una única perspectiva fija, arruinaría la ilusión de que la posición de la vista se mueva en función del contenido, aunque la orientación de la vista cambie a medida que el usuario mira alrededor. Puede crear estas experiencias de solo orientación mediante un marco de referencia adjunto.
Marco estacionario de referencia
El sistema de coordenadas proporcionado por un marco estacionario de referencia funciona para mantener las posiciones de los objetos cerca del usuario lo más estables posible en función del mundo, a la vez que respeta los cambios en la posición principal del usuario.
Para las experiencias de escalado sentado en un motor de juego como Unity, un marco de referencia estacionario es lo que define el "origen mundial" del motor. Los objetos que se colocan en una coordenada de mundo específica usan el marco estacionario de referencia para definir su posición en el mundo real mediante esas mismas coordenadas. El contenido que permanece en el mundo, incluso cuando el usuario camina, se conoce como contenido bloqueado por el mundo .
Normalmente, una aplicación creará un marco de referencia estacionario en el inicio y usará su sistema de coordenadas durante toda la duración de la aplicación. Como desarrollador de aplicaciones en Unity, puede empezar a colocar contenido en función del origen, que estará en la posición inicial y la orientación de la cabeza del usuario. Si el usuario se mueve a un nuevo lugar y quiere continuar con su experiencia de escala asentada, puede obtener el origen del mundo más reciente en esa ubicación.
Con el tiempo, a medida que el sistema aprende más sobre el entorno del usuario, puede determinar que las distancias entre varios puntos del mundo real son más cortas o más largas de lo que el sistema creía anteriormente. Si representa hologramas en un marco estacionario de referencia para una aplicación en HoloLens donde los usuarios van más allá de un área de unos 5 metros de ancho, es posible que la aplicación observe un desfase en la ubicación observada de esos hologramas. Si tu experiencia tiene usuarios que van más allá de 5 metros, estás creando una experiencia a escala mundial, que requerirá otras técnicas para mantener estables los hologramas, como se describe a continuación.
Marco adjunto de referencia
Un marco de referencia adjunto se mueve con el usuario mientras camina, con un encabezado fijo definido cuando la aplicación crea por primera vez el marco. Esto permite al usuario examinar cómodamente el contenido colocado dentro de ese marco de referencia. El contenido representado de esta manera relativa al usuario se denomina contenido bloqueado por el cuerpo .
Cuando los auriculares no pueden averiguar dónde está en el mundo, un marco de referencia adjunto proporciona el único sistema de coordenadas, que se puede usar para representar hologramas. Esto hace que sea ideal para mostrar la interfaz de usuario de reserva para indicar al usuario que su dispositivo no puede encontrarlo en el mundo. Las aplicaciones que se establecen a escala o superior deben incluir una reserva de solo orientación para ayudar al usuario a volver a ir, con una interfaz de usuario similar a la que se muestra en la Mixed Reality inicio.
Creación de una experiencia a escala permanente o a escala de sala
Para ir más allá de la escala sentado en un casco envolvente y crear una experiencia de escala permanente, puede usar el marco de escenario de referencia.
Para proporcionar una experiencia de escala de sala, que permita a los usuarios caminar dentro del límite de 5 metros que definieron previamente, también puede comprobar si hay límites de fase .
Fotograma de fase de referencia
Al configurar por primera vez un casco envolvente, el usuario define una fase, que representa la sala en la que experimentará la realidad mixta. La fase define mínimamente un origen de fase, un sistema de coordenadas espaciales centrado en la posición del suelo elegida por el usuario y la orientación hacia delante donde piensa usar el dispositivo. Al colocar contenido en este sistema de coordenadas de fase en el plano de planta Y=0, puede asegurarse de que los hologramas aparecen cómodamente en el suelo cuando el usuario está de pie, lo que proporciona a los usuarios una experiencia de escala permanente.
Límites de fase
El usuario también puede definir opcionalmente límites de fase, un área dentro de la sala que ha borrado para moverse en realidad mixta. Si es así, la aplicación puede crear una experiencia de escala de sala, usando estos límites para asegurarse de que los hologramas siempre se colocan donde el usuario puede llegar a ellos.
Dado que el marco de la fase de referencia proporciona un único sistema de coordenadas fijas dentro del cual colocar contenido relativo al suelo, es la ruta más fácil para migrar aplicaciones a escala permanente y a escala de sala desarrolladas para cascos de realidad virtual. Sin embargo, al igual que con esas plataformas vr, un único sistema de coordenadas solo puede estabilizar el contenido en aproximadamente 5 metros (16 pies) de diámetro, antes de que los efectos de palanca-brazo hacen que el contenido lejos del centro cambie notablemente a medida que el sistema se ajusta. Para superar los 5 metros, se necesitan anclajes espaciales.
Creación de una experiencia a escala mundial
HoloLens permite experiencias verdaderas a escala mundial que permiten a los usuarios deambular más allá de 5 metros. Para crear una aplicación a escala mundial, necesitará nuevas técnicas más allá de las usadas para las experiencias de escala de salas.
Por qué no se puede usar un único sistema de coordenadas rígidas más allá de 5 metros
En la actualidad, al escribir juegos, aplicaciones de visualización de datos o aplicaciones de realidad virtual, el enfoque típico es establecer un sistema de coordenadas mundial absoluto al que todas las demás coordenadas puedan volver a asignar de forma confiable. En ese entorno, siempre puede encontrar una transformación estable que defina una relación entre dos objetos cualquiera de ese mundo. Si no mueve esos objetos, sus transformaciones relativas siempre seguirán siendo las mismas. Este tipo de sistema de coordenadas global funciona bien al representar un mundo puramente virtual donde se conoce toda la geometría de antemano. Hoy en día, las aplicaciones de REALIDAD VIRTUAL a escala de sala suelen establecer este tipo de sistema de coordenadas a escala de habitación absolutas con su origen en el suelo.
Por el contrario, un dispositivo de realidad mixta sin ataduras, como HoloLens, tiene una comprensión dinámica basada en sensores del mundo, ajustando continuamente su conocimiento a lo largo del tiempo del entorno del usuario a medida que recorre muchos metros a través de un piso completo de un edificio. En una experiencia a escala mundial, si colocaste todos tus hologramas en un único sistema de coordenadas rígido, esos hologramas se desviarían necesariamente con el tiempo, ya sea en función del mundo o entre sí.
Por ejemplo, los auriculares pueden creer que dos ubicaciones en el mundo están separadas por 4 metros y, posteriormente, refinan esa comprensión, aprendiendo que las ubicaciones están de hecho a 3,9 metros de distancia. Si esos hologramas se hubieran colocado inicialmente a 4 metros de distancia en un único sistema de coordenadas rígido, uno de ellos siempre aparecería a 0,1 metros del mundo real.
Delimitadores espaciales
Windows Mixed Reality resuelve el problema descrito en la sección anterior, ya que permite crear anclajes espaciales para marcar puntos importantes en el mundo donde el usuario ha colocado hologramas. Un delimitador espacial representa un punto importante en el mundo del que el sistema debe realizar un seguimiento a lo largo del tiempo.
A medida que el dispositivo aprende sobre el mundo, estos anclajes espaciales pueden ajustar su posición según sea necesario para garantizar que cada anclaje permanezca exactamente donde se colocó en función del mundo real. Al colocar un delimitador espacial en la ubicación donde el usuario coloca un holograma y, a continuación, posicionar ese holograma en función de su anclaje espacial, puede asegurarse de que el holograma mantiene una estabilidad óptima, incluso cuando el usuario recorre decenas de metros.
Este ajuste continuo de los delimitadores espaciales basados entre sí es la diferencia clave entre los sistemas de coordenadas de los delimitadores espaciales y los marcos estacionarios de referencia:
Los hologramas colocados en el marco estacionario de referencia mantienen una relación rígida entre sí. Sin embargo, a medida que el usuario recorre largas distancias, el sistema de coordenadas de ese marco puede desviarse en función del mundo para asegurarse de que los hologramas junto al usuario parezcan estables.
Los hologramas colocados en el marco de la fase de referencia también mantienen una relación rígida entre sí. A diferencia del marco estacionario, el marco del escenario siempre permanece fijo en función de su origen físico definido. Sin embargo, el contenido representado en el sistema de coordenadas de la fase más allá de su límite de 5 metros solo aparecerá estable mientras el usuario se encuentre dentro de ese límite.
Los hologramas colocados con un delimitador espacial pueden desviarse en función de los hologramas colocados mediante otro delimitador espacial. Esto permite a Windows mejorar su comprensión de la posición de cada delimitador espacial, incluso si, por ejemplo, un delimitador necesita ajustarse a la izquierda y otro delimitador debe ajustarse a la derecha.
A diferencia de un marco de referencia estacionario, que siempre optimiza la estabilidad cerca del usuario, el marco de escenario de referencia y los anclajes espaciales garantizan la estabilidad cerca de sus orígenes. Esto ayuda a que esos hologramas permanezcan exactamente en su lugar a lo largo del tiempo, pero también significa que los hologramas representados demasiado lejos del origen de su sistema de coordenadas experimentarán efectos de palanca-brazo cada vez más graves. Esto se debe a que los pequeños ajustes en la posición y orientación de la etapa o el anclaje se amplían proporcionalmente a la distancia desde ese delimitador.
Una buena regla general es asegurarse de que todo lo que se represente en función del sistema de coordenadas de un delimitador espacial lejano esté a unos 3 metros de su origen. En el caso de un origen de fase cercano, la representación de contenido distante es correcta, ya que cualquier error posicional mayor solo afectará a hologramas pequeños que no se desplazarán mucho en la vista del usuario.
Persistencia del delimitador espacial
Los delimitadores espaciales también pueden permitir que la aplicación recuerde una ubicación importante incluso después de que la aplicación se suspenda o el dispositivo se apague.
Puedes guardar en disco los delimitadores espaciales que crea la aplicación y, a continuación, volver a cargarlos más tarde, guardándolos en el almacén de delimitadores espaciales de la aplicación. Al guardar o cargar un delimitador, se proporciona una clave de cadena que es significativa para la aplicación, para identificar el delimitador más adelante. Piense en esta clave como el nombre de archivo del delimitador. Si quieres asociar otros datos a ese delimitador, como un modelo 3D que el usuario colocó en esa ubicación, guárdelo en el almacenamiento local de la aplicación y asócielo a la clave que eligió.
Al conservar los delimitadores en la tienda, los usuarios pueden colocar hologramas individuales o colocar un área de trabajo alrededor de la cual una aplicación colocará sus diversos hologramas y, a continuación, encontrar esos hologramas más adelante donde los esperan, en muchos usos de la aplicación.
Evitar el contenido bloqueado con la cabeza
Desaconsejamos encarecidamente la representación de contenido bloqueado con la cabeza, que permanece en un punto fijo de la pantalla (por ejemplo, un HUD). En general, el contenido bloqueado con la cabeza es incómodo para los usuarios y no se siente como una parte natural de su mundo.
Normalmente, el contenido bloqueado para la cabeza debe reemplazarse por hologramas que se adjuntan al usuario o se colocan en el propio mundo. Por ejemplo, los cursores generalmente deben insertarse en el mundo, escalando de forma natural para reflejar la posición y la distancia del objeto bajo la mirada del usuario.
Control de errores de seguimiento
En algunos entornos, como los pasillos oscuros, es posible que no sea posible que un auricular use el seguimiento interno-hacia fuera para localizarse correctamente en el mundo. Esto puede provocar que los hologramas no aparezcan o aparezcan en lugares incorrectos si se controlan incorrectamente. Ahora se describen las condiciones en las que esto puede ocurrir, su impacto en la experiencia del usuario y sugerencias para controlar mejor esta situación.
Los auriculares no pueden realizar un seguimiento debido a datos insuficientes del sensor
A veces, los sensores de los auriculares no son capaces de averiguar dónde está el auricular. Esto puede ocurrir si:
- La habitación es oscura
- Si los sensores están cubiertos por el cabello o las manos
- Si el entorno no tiene suficiente textura.
Cuando esto sucede, los auriculares no podrán realizar un seguimiento de su posición con suficiente precisión para representar hologramas bloqueados por el mundo. No puede averiguar dónde se basa un delimitador espacial, un marco estacionario o un marco de escenario en el dispositivo. Sin embargo, todavía puede representar contenido bloqueado por el cuerpo en el marco adjunto de referencia.
La aplicación debe indicar al usuario cómo recuperar el seguimiento posicional, representando algún contenido bloqueado por el cuerpo de reserva que describe algunas sugerencias, como descubrir los sensores y encender más luces.
Los auriculares se rastrean incorrectamente debido a cambios dinámicos en el entorno
El dispositivo no puede realizar un seguimiento correcto si hay muchos cambios dinámicos en el entorno, como muchas personas que caminan por la sala. En este caso, los hologramas pueden parecer saltar o desviarse a medida que el dispositivo intenta realizar un seguimiento de sí mismo en este entorno dinámico. Se recomienda usar el dispositivo en un entorno menos dinámico si llega a este escenario.
Los auriculares se rastrean incorrectamente porque el entorno ha cambiado significativamente con el tiempo
Cuando se empieza a usar un casco en un entorno donde se han movido muebles, colgantes de pared, etc., es posible que algunos hologramas aparezcan desplazados desde sus ubicaciones originales. Los hologramas anteriores también pueden saltar a medida que el usuario se mueve en el nuevo espacio porque el sistema ya no entiende el espacio. A continuación, el sistema intenta volver a asignar el entorno al tiempo que intenta conciliar las características de la sala. En este escenario, se recomienda animar a los usuarios a reemplazar los hologramas que anclaron en el mundo si no aparecen donde se espera.
Los auriculares se rastrean incorrectamente debido a espacios idénticos en un entorno
A veces, un hogar u otro espacio puede tener dos áreas idénticas. Por ejemplo, dos salas de conferencias idénticas, dos áreas de esquina idénticas, dos grandes pósteres idénticos que cubren el campo de visión del dispositivo. En tales escenarios, el dispositivo puede, a veces, confundirse entre las partes idénticas y marcarlas como las mismas en su representación interna. Esto puede hacer que los hologramas de algunas áreas aparezcan en otras ubicaciones. El dispositivo puede empezar a perder el seguimiento a menudo, ya que su representación interna del entorno se ha dañado. En este caso, se recomienda restablecer la comprensión ambiental del sistema. Restablecer el mapa provoca la pérdida de todas las ubicaciones de anclaje espacial. Esto hará que los auriculares realicen un buen seguimiento en las áreas únicas del entorno. Sin embargo, el problema puede volver a producirse si el dispositivo vuelve a confundirse entre las áreas idénticas.