Preguntas más frecuentes
Definiciones usadas en esta documentación:
Posición: una posición y orientación.
Holograma: un objeto virtual visible.
Mundo real: el mundo físico.
Mundo físico: el mundo real.
Mundo virtual: mundo generado y simulado sintéticamente presentado a través de medios electrónicos.
Marcador de mundo virtual: una posición en el sistema de coordenadas virtual (modelado). Eso es todo, solo una posición y orientación de referencia.
Marcador del mundo real: una posición relativa al entorno real y la cámara correspondientes a un marcador del mundo virtual. La posición del marcador del mundo real se establece mediante una combinación de datos detectados.
Características visibles: rasgos del mundo físico que se pueden reconocer visualmente.
¿Cómo funciona World Locking Tools?
Dadas las incoherencias entre los marcadores del mundo real y los del mundo virtual, World Locking Tools proporciona un sistema de coordenadas estable y un ajuste de cámara que minimiza las incoherencias visibles.
En otras palabras, bloquea toda la escena con un grupo compartido de anclajes, en lugar de bloquear cada grupo de objetos con su propio anclaje.
¿Por qué los marcadores virtuales y los del mundo real son incoherentes?
Entre las muchas tecnologías sorprendentes que hay detrás de Microsoft Mixed Reality, la posibilidad de realizar un seguimiento de la posición del caso en el mundo físico en tiempo real, sin la ayuda de dispositivos externos, es especialmente increíble.
El sistema de seguimiento de la cabeza es notablemente preciso a la hora de determinar la posición de la cabeza en relación con puntos de referencia virtuales conocidos en el entorno físico. En este análisis, esos puntos de referencia virtuales se denominarán "características visibles".
Al dejar una posición conocida en relación con las características visibles circundantes, por ejemplo, si el usuario camina por la habitación, y luego vuelve a esa misma posición, el sistema reconocerá muchas de esas mismas características visibles. También puede determinar las posiciones de esas características visibles en relación con la posición actual de la cabeza y hacerlo con una precisión sorprendente.
Ahora, el sistema de seguimiento sabe dónde están estas características y la cabeza en relación con las otras, pero no sabe en términos absolutos cuáles son las coordenadas para la cabeza o las características. Como el mundo físico no tiene ningún sistema de coordenadas absoluto, no hay ninguna respuesta correcta. Así pues, el sistema de seguimiento asigna coordenadas que son coherentes con el historial reciente, pero pueden ser incoherentes a lo largo de todo el historial. Es decir, al volver a la misma posición, la cabeza puede tener ahora unas coordenadas diferentes a las que tenía al salir. Se trata de una forma de desfase del sensor.
Pero si las nuevas coordenadas virtuales de la posición de la cabeza se han desplazado hacia X positivo, por ejemplo, entonces todos los objetos del holograma que están inmóviles en ese sistema de coordenadas virtual están ahora desplazados hacia X negativo en relación con la cabeza. Esto significa que para el observador que lleva el rastreador de cabeza, estará desplazado con respecto al mundo real en comparación con su ubicación anterior a la caminata.
¿Unity puede controlar esto?
Sí, aunque con limitaciones. Unity proporciona un mecanismo excelente para hacer frente a este escenario, conocido como anclajes espaciales. Si el espacio virtual se ha desplazado en relación con el espacio físico, al hacer un seguimiento de las características visibles subyacentes, un anclaje espacial sabe que debe desplazarse en el espacio virtual para permanecer bloqueado en el espacio físico. Cualquier cosa unida al anclaje espacial será igualmente arrastrada a través del espacio virtual de Unity para permanecer inmóvil en el espacio físico.
Las limitaciones están relacionadas con el hecho de que las características visibles se vuelven poco confiables cuando están lejos de las cámaras del rastreador de cabeza. Esto no es sorprendente. Las características visibles que no son visibles son malos puntos de referencia.
Por lo tanto, el alcance útil de un anclaje espacial se limita a 3 metros. Dependiendo de los requisitos de precisión de la aplicación, el alcance utilizable puede ser menor.
Parece bastante bueno, ¿cuál es el problema?
Es más que bueno, es simplemente increíble. Pero hay situaciones, situaciones importantes, en las que los anclajes espaciales no proporcionan una solución satisfactoria.
En primer lugar, cada anclaje espacial se mueve a través del espacio de coordenadas virtual de Unity de forma independiente, intentando permanecer inmóvil en el mundo físico. Esto significa que los objetos anclados de forma independiente se moverán unos con respecto a otros mientras intentan permanecer en sus posiciones físicas. Para una aplicación que intenta mantener una distribución precisa, esto puede ser un gran problema.
En segundo lugar, con su alcance limitado, un solo anclaje espacial no proporcionará buenos resultados para objetos individuales que sean más grandes que el alcance utilizable de ese anclaje espacial. Mientras que los puntos del objeto cercanos al anclaje espacial permanecerán bien bloqueados en el mundo, debido al efecto palanca, los puntos cada vez más alejados del anclaje espacial sufrirán errores cada vez mayores. Esto deja a un objeto, o a una colección de objetos, de más de un metro de tamaño sin una solución sólida de bloqueo en el mundo.
¿Qué más puede salir mal?
Al volver a una posición ocupada anteriormente, World Locking Tools tiene suficiente información para restaurar el sistema de coordenadas virtual donde estaba en relación con el mundo físico. De este modo, los hologramas que están inmóviles en el mundo virtual también lo están en el mundo físico.
Pero el desfase puede producirse tanto en un viaje de ida como de vuelta.
Como ejemplo concreto, considere la posibilidad de medir 10 metros entre dos códigos QR colocados en una habitación física y, por tanto, modelar dos cajas en la habitación virtual como si estuvieran a 10 metros de distancia. Pero en tiempo de ejecución, debido al desfase de la posición de la cabeza en el espacio virtual, caminar los 10 metros entre los códigos QR mueve 11 metros a través del espacio virtual.
Para resolver esto, la aplicación puede optar por una característica de World Locking Tools que proporcione información que calibre la distancia en el espacio virtual con la distancia en el espacio físico. El comportamiento que proporciona World Locking Tools es que, situándose sobre el primer código QR y mirando hacia abajo verá la primera caja. A medida que se recorren los 10 metros en el mundo físico, el metro extra en el espacio virtual se absorbe silenciosamente, dejando que la cabeza se mueva también 10 metros en el espacio virtual. Así que al llegar al segundo código QR físico y mirar hacia abajo, la segunda caja virtual estará allí como se esperaba.
Hay que tener en cuenta que se harán los ajustes correspondientes a todos los anclajes que no tengan datos verdaderos, ya que se pasan en el camino entre los dos códigos QR. Por supuesto, ese ajuste se aplica suavemente para minimizar su percepción.
¿Qué ocurre si los marcadores del mundo real no son estables?
Además, si los marcadores del mundo real se actualizan dinámicamente, World Locking Tools puede ajustar su fotograma espacial y el ajuste de la cámara para que coincidan de forma óptima con la configuración actual.
Por ejemplo, en HoloLens si los marcadores del mundo real son anclajes espaciales, se desplazarán con el tiempo. También se moverán durante el restablecimiento (por ejemplo, en el cierre del bucle) y en otras circunstancias. A medida que se actualizan sus posiciones, World Locking Tools compensa ajustando la cámara como antes para minimizar las incoherencias percibidas entre los anclajes espaciales detectados y sus homólogos virtuales.
Obsérvese que esta compensación de las actualizaciones en las posiciones de los anclajes puede producirse incluso en ausencia de datos verdaderos sobre los marcadores. Los datos verdaderos implícitos son que las relaciones actuales entre los marcadores del mundo real son (más) correctas.
¿Qué ocurre si las incoherencias son realmente malas?
World Locking Tools puede detectar varios escenarios en los que las incoherencias entre los marcadores reales y virtuales son grandes y se pueden mejorar. Por ejemplo, se puede obtener más información que establezca la relación espacial entre dos grupos de marcadores previamente aislados. O bien, el cierre del bucle podría sugerir un desplazamiento de los marcadores a lo largo de la ruta para permitir que los extremos se encuentren.
En estos casos, World Locking Tools notifica al cliente la posible corrección, y, a petición suya, la realiza y le notifica los ajustes que debe hacer en sus objetos que siguen los marcadores virtuales. Hasta que el cliente solicite dicha corrección (si es que existe), World Locking Tools sigue minimizando las incoherencias percibidas.