Uso del motor de Vuforia con Unity

Vuforia Engine aporta una funcionalidad importante para HoloLens: la capacidad de conectar experiencias de AR a imágenes y objetos específicos del entorno. Puede usar esta funcionalidad para superponer instrucciones paso a paso sobre maquinaria para la empresa industrial o agregar características digitales y experiencias a un producto físico o juego.

Vuforia Engine ofrece una amplia gama de características y objetivos para que el proceso de desarrollo de AR sea más flexible. Una de nuestras características más recientes, Vuforia Model Targets, es una funcionalidad clave para usos comerciales e industriales. Los destinos de modelo permiten a las aplicaciones reconocer objetos físicos como máquinas, automóviles o juguetes y realizar un seguimiento de ellos en función de un modelo CAD o 3D digital. En el caso de los usos industriales, esta característica puede proporcionar a los trabajadores de montaje y técnicos de servicio instrucciones de trabajo y procedimientos de AR mientras están en la fábrica o fuera del campo.

Las aplicaciones existentes de Vuforia Engine creadas para teléfonos y tabletas se pueden configurar fácilmente en Unity para que se ejecuten en HoloLens. Incluso puedes usar Vuforia Engine para tomar tu nueva aplicación de HoloLens para Windows 10 tabletas, como el Surface Pro y la Surface Book.

Obtener las herramientas

Instale las versiones recomendadas de Visual Studio y Unity y, a continuación, configure Unity para que use Visual Studio y el IDE y el compilador preferidos.

Al instalar Unity, asegúrese de instalar "Windows Store IL2CPP Scripting Backend".

Agregue el paquete Vuforia Engine como se describe aquí.

Introducción al motor de Vuforia

El mejor punto de partida para obtener información sobre Vuforia Engine y HoloLens es el ejemplo de HoloLens Vuforia Engine (disponible en el almacén de activos de Unity). El ejemplo proporciona un proyecto de HoloLens completo, incluidas escenas preconfiguradas que se pueden implementar en un HoloLens.

Las escenas muestran cómo usar Vuforia Image Targets para reconocer una imagen y aumentarla con contenido digital en una experiencia de HoloLens. El motor de Vuforia HoloLens Sample también incluye una escena que muestra el uso de destinos de modelo y VuMarks en HoloLens. Puede sustituir fácilmente su propio contenido en las escenas para experimentar con la creación de HoloLens aplicaciones que usan Vuforia Engine.

Configuración de una aplicación de Vuforia para HoloLens

El desarrollo de una aplicación Vuforia Engine para HoloLens es fundamentalmente el mismo que el desarrollo de aplicaciones Vuforia Engine para otros dispositivos. Después, puede aplicar los valores de compilación y las configuraciones que se describen en la sección siguiente. Eso es todo lo que se necesita para permitir que Vuforia Engine funcione con los sistemas de asignación espacial HoloLens y seguimiento posicional.

Compilación y ejecución del ejemplo de motor de Vuforia para HoloLens

  1. Descargue el ejemplo de motor de Vuforia para HoloLens desde el almacén de recursos de Unity.
  2. Aplicación de las opciones recomendadas del motor de Unity para la potencia y el rendimiento
  3. Agregue las escenas de ejemplo a Escenas en compilación.
  4. En Compilar Configuración, cambie la plataforma de compilación a UWP haciendo clic en el botón Agregar escenas abiertas. image
  5. Seleccione el botón Reproductor Configuración.
  • Selecciona el icono de UWP y expande la sección XR Configuración.
  • Asegúrese de que Virtual Reality Supported está habilitado.
  • En Sdk de realidad virtual , asegúrese de que:
    • La ventana Mixed Reality se incluye en la lista y se habilita Habilitar el uso compartido de búferes de profundidad.
    • El formato de profundidad se establece en profundidad de 16 bits.
  • Asegúrese de que el modo de representación estéreo esté establecido en Instancia de paso único.
  1. Expanda la sección Publicación Configuración.
  • En Funcionalidades , asegúrese de que el cliente de Internet, WebCam, micrófono y SpatialPerception estén seleccionados.
  • NOTA: SpatialPerception solo se debe seleccionar si quieres usar surface Observer API.
  • En Familias de dispositivos compatibles, asegúrese de que Holographic esté seleccionado.
  1. Expanda la sección Resolución y presentación .
  • Deshabilite Ejecutar en segundo plano para que Vuforia Engine se detenga cuando la aplicación se coloque en segundo plano y pueda acceder de nuevo a la cámara cuando se reanude la aplicación.
  • En la lista desplegable Orientación predeterminada , asegúrese de que horizontal izquierda está seleccionada.
  1. Vuelva a la ventana Compilar Configuración y seleccione Compilar para generar un proyecto de Visual Studio.
  2. Compile el archivo ejecutable a partir de Visual Studio e instálelo en el HoloLens.

Portal para desarrolladores de Vuforia

Los desarrolladores que buscan crear sus propias experiencias de AR con Vuforia Engine y HoloLens deben registrarse en nuestro Portal para desarrolladores de Vuforia en developer.vuforia.com. En el portal, los desarrolladores tienen acceso a los foros de Vuforia Engine , donde pueden unirse a discusiones de la comunidad, una biblioteca con documentación detallada sobre todas las características del motor de Vuforia y Vuforia Target Manager , donde los usuarios pueden crear sus propios destinos personalizados. Los desarrolladores también pueden registrarse para obtener una licencia gratuita para desarrolladores mediante el Administrador de licencias de Vuforia.

Seguimiento de dispositivos con Vuforia

Device Tracking mantiene el seguimiento incluso cuando un destino ya no está en vista. Se habilita automáticamente para todos los destinos cuando está habilitado el rastreador de dispositivos posicionales. Para HoloLens aplicaciones, el rastreador de dispositivos posicionales se inicia automáticamente en Unity.

Vuforia Engine fusiona automáticamente las poses del seguimiento de la cámara y el seguimiento espacial de HoloLens para proporcionar poses de destino estables independientemente de si la cámara ve el destino o no.

Dado que el proceso se controla automáticamente, el desarrollador no requiere ninguna programación.

A continuación se muestra una descripción general del proceso:

  1. El rastreador de destino de Vuforia reconoce el destino
  2. A continuación, se inicializa el seguimiento de destino.
  3. La posición y la rotación del destino se analizan para proporcionar una estimación sólida de la posición para la HoloLens
  4. Vuforia Engine transforma la posición del destino en la HoloLens espacio de coordenadas de asignación espacial
  5. HoloLens toma el control de seguimiento si el destino ya no está en vista. Cada vez que vuelva a mirar al destino, Vuforia seguirá realizando un seguimiento de las imágenes y los objetos con precisión.

Los destinos detectados, pero que ya no están en vista, se notifican como EXTENDED_TRACKED. En estos casos, el script DefaultTrackableEventHandler que se usa en todos los destinos sigue representando el contenido de aumento. El desarrollador puede controlar este comportamiento mediante la implementación de un script de controlador de eventos rastreable personalizado.

Modo de rendimiento con Vuforia Engine

Es posible a través del motor de Vuforia administrar el rendimiento en la HoloLens hasta la medida de las experiencias de AR y reducir la carga de trabajo en la CPU. El motor Vuforia ofrece tres modos que se pueden seleccionar: predeterminado, para optimizar la velocidad y para optimizar la calidad.

  • MODE_OPTIMIZE_SPEED permite minimizar la carga de trabajo en el dispositivo HoloLens y es excelente para ampliar las experiencias de AR. Se recomienda para situaciones en las que la aplicación realiza el seguimiento de objetos o destinos estáticos.
  • MODE_DEFAULT es el modo normal, que se puede usar en la mayoría de los escenarios.
  • MODE_OPTIMIZE_QUALITY es mejor para realizar el seguimiento de destinos móviles o destinos de modelo que espera que se recojan.

Establecer el modo

Para cambiar el modo de rendimiento en Unity, vaya a Configuración de Vuforia (Ctrl+Mayús+V/Cmd+Mayús+V) que se encuentra como un componente en arCamera GameObject.

  • Seleccione el menú desplegable modo de dispositivo de cámara y seleccione una de las tres opciones.

Consulta también