El interés por el HoloLens, y la realidad digital en general, está creciendo rápidamente. Y gran parte de ese interés proviene de desarrolladores que quieren saber cómo construir software para HoloLens, el dispositivo de realidad mixta de Microsoft.
En un post anterior, Programación holográfica: un how-to HoloLens en un mundo de realidad mixta, di una visión general de lo que es el HoloLens y dónde encaja en el mundo de la realidad aumentada y virtual. También introduje los conceptos de mirada, gestos, voz y audio. En este post, me centraré en la parte posiblemente más importante de la experiencia del HoloLens: la cartografía espacial.
Captura de la conciencia espacial
El HoloLens utiliza cuatro cámaras ambientales en la parte delantera del dispositivo para trazar un mapa del entorno físico y construir un modelo 3D del mundo real. A medida que usas el dispositivo, crea continuamente un modelo de mapeo espacial del espacio en el que estás y actualiza cualquier mapeo existente. Lo realmente genial es que el portal de desarrolladores que viene con las herramientas para desarrolladores te permite ver este mapeo espacial en 3D en tiempo real, y funciona tanto para los dispositivos físicos HoloLens como para el emulador.
Asegúrate de que tu dispositivo está en la misma red física que tu ordenador y, a continuación, accede al portal para desarrolladores introduciendo la dirección IP de tu dispositivo en cualquier navegador. En el portal para desarrolladores, ve a la opción de menú Vista 3D a la izquierda, que te mostrará un plano vacío. Presiona el botón Actualizar y el estado actual del modelo de mapeo 3D se dibujará en el plano como se ve a continuación.
Figura 1: Vista en 3D de la cartografía espacial
La vista en 3D también mostrará las anclas espaciales como están unidas a los objetos en el mundo digital. Además, puedes guardar modelos de mapas espaciales en 3D y luego compartirlos entre los emuladores para tener un modelo realista para el desarrollo de aplicaciones y escenarios de prueba.
Propósito de la cartografía espacial
Puede que te preguntes por qué es tan importante gestionar la integración de la cartografía espacial. Hay varios propósitos de la cartografía espacial y cada uno de ellos es una parte crítica para crear una experiencia de realidad mixta exitosa.
Oclusión
Uno de los usos más simples de la cartografía espacial, y uno de los más importantes para crear un modelo de interacción natural, es simplemente ocluir los hologramas. Al ocultar los hologramas, u oscurecer partes de ellos, se aumenta dramáticamente el realismo percibido. También se crea una expectativa de que los hologramas colisionarán con objetos físicos cuando sean sólidos. Todo esto significa que la simple oclusión es de gran importancia para transmitir eficazmente una integración realista de las realidades físicas y digitales.
Visualización
A veces, puede ser necesario visualizar las superficies y estructuras físicas para poder colocar hologramas en ellas de forma precisa y realista. También puede ser que quieras tener hologramas que proyecten sombras en las superficies también.
Colocación
Para colocar los hologramas en un mundo físico, el HoloLens se basa en la cartografía espacial para determinar la distancia, el espacio disponible y las superficies utilizables. Una de las concesiones del uso de gestos con la mano para inferir la distancia es que normalmente sólo comunicamos la dirección con gestos. Cuando esto necesita ser traducido también a la distancia, la cartografía espacial puede ayudar a indicar al usuario dónde se pueden colocar los hologramas. Combinando esto con la forma del holograma, la colocación añade otro aspecto natural a la realidad mixta.
Física
Aplicar la gravedad y otros comportamientos físicos esperados a los hologramas, como las bolas que rebotan en las paredes y el suelo, se trata de hacer creer a los usuarios que los hologramas son parte del mundo real. Para tener comportamientos físicos realistas, es importante un completo mapeo espacial y puede que tengas que hacer que tus usuarios escaneen la habitación antes de que puedas proceder.
A menudo quieres que los hologramas naveguen por tu espacio físico, como si fueran parte de él. Esto requiere una cartografía espacial precisa para asegurarse de que no hay gente que camine a través de los muebles y salte a través de las paredes. Esto también requiere ser capaz de identificar las superficies, así que la gente sólo camina por el suelo y sólo se sienta en sillas y sofás.
Implementación de la cartografía espacial
Usar la cartografía espacial en tu aplicación HoloLens es más simple de lo que crees. Lo primero que haces es habilitar la capacidad de percepción espacial para tu proyecto Unity. Esto hará que los objetos 3D se adhieran al modelo de mapeo espacial 3D una vez que exporte el proyecto de Unity a Visual Studio y, a su vez, a un dispositivo HoloLens.
Figura 2: Sumando la percepción espacial en la unidad
Una de las mejores y más fáciles maneras de empezar con la cartografía espacial, y el HoloLens en general, es usando el HoloToolkit. Esta es una colección de scripts y componentes destinados a acelerar el desarrollo de aplicaciones holográficas dirigidas a Windows Holographic. También ofrece atajos para algunas de las tareas de «fontanería», como la creación de un nuevo proyecto y la habilitación de la RV en la Unidad.
El HoloToolkit viene con varios scripts que, entre otras cosas, gestionan el número de polígonos que quieres renderizar para los objetos, controla el renderizador de mapas espaciales y mucho más.
¿Quieres saber más sobre el desarrollo del HoloLens?
Si quieres conocer más a fondo cómo construir aplicaciones exitosas de realidad mixta y aprovechar la plataforma en comparación con la realidad virtual y la realidad aumentada, echa un vistazo a este seminario web bajo demanda.