Android XR admite apps compiladas con OpenXR a través de su compatibilidad con la especificación OpenXR 1.1 y extensiones de proveedores seleccionadas. OpenXR es un estándar abierto que te permite crear experiencias envolventes e interactivas con un conjunto común de APIs en una amplia variedad de dispositivos de realidad extendida.
Funciones
Android XR admite funciones que te permiten compilar apps que aprovechen al máximo las capacidades únicas de los dispositivos de realidad extendida con OpenXR. Estas funciones incluyen lo siguiente:
- Framework de entidades espaciales
- Una base unificada para la interpretación de escenas y el razonamiento espacial. Permite que las aplicaciones descubran, consulten y realicen un seguimiento de las entidades espaciales físicas en el entorno, creen anclajes espaciales adjuntos a entidades, realicen el lanzamiento de rayos de entidades espaciales y conserven entidades espaciales en las sesiones de la aplicación.
- Objetos rastreables
- Admite la detección de planos, que es la capacidad de identificar y realizar un seguimiento de las superficies planas dentro del entorno, lo que permite la colocación de objetos virtuales en relación con el mundo real y los anclajes, que son puntos de referencia virtuales que se pueden adjuntar a objetos o ubicaciones del mundo real, de modo que el contenido virtual permanezca posicionado y orientado con precisión incluso cuando el usuario se mueve.
- Lanzamiento de rayos
- Es una técnica que se usa para determinar el punto de intersección entre un rayo virtual y los objetos de la escena, lo que facilita las interacciones, como seleccionar y manipular elementos virtuales.
- Persistencia de anclajes
- Es la capacidad de guardar y restablecer anclajes en varias sesiones, lo que permite la colocación persistente y coherente de contenido virtual dentro del entorno.
- Seguimiento de objetos
- Es la capacidad de realizar un seguimiento del mouse, el teclado y otros objetos en el mundo real.
- Seguimiento de códigos QR
- Es la capacidad de realizar un seguimiento de los códigos QR en el entorno físico y decodificar sus datos.
- Texturas de profundidad
- Es la generación de mapas de profundidad que proporcionan información sobre la distancia entre la cámara y los objetos de la escena, lo que permite efectos de oclusión e interacción más realistas.
- Transferencia
- Es la capacidad de combinar imágenes de la cámara del mundo real con contenido virtual, lo que crea una experiencia de realidad mixta que combina perfectamente los mundos físico y digital.
- Malla de escena
- Es la capacidad de adquirir una malla 3D del entorno, que se puede usar para la física, la oclusión y otras interacciones que reconocen el mundo.
- Transferencia de capa de composición
- Permite un recorte de capa de composición de transferencia de polígonos, que se puede usar para incorporar objetos del mundo real a una escena.
- Seguimiento facial
- Es la capacidad de realizar un seguimiento de las funciones del rostro del usuario, lo que permite la creación de avatares y personajes virtuales más realistas y expresivos.
- Seguimiento de ojos
- Proporciona la posición y la orientación del ojo del usuario, que está diseñada para hacer que la postura de los ojos de los avatares sea más realista.
- Monitoreo de manos
- Es la capacidad de realizar un seguimiento de la posición y el movimiento de las manos del usuario.
- Malla de manos
- Proporciona una representación precisa de las manos del usuario como una malla de baja cantidad de polígonos. Está optimizada para la entrega de plataforma a aplicación para garantizar que obtengas el mejor rendimiento posible. Esta es una alternativa a otras extensiones que usan una postura de unión y combinan pesos.
- Estimación de luz
- Se usa para modelos de iluminación que coincidan con las condiciones de iluminación del mundo real del usuario.
Dispositivos de entrada compatibles
Android XR también admite los siguientes dispositivos de entrada.
- Interacción con la mano
- Es el reconocimiento de gestos específicos de la mano, como pellizcar, deslizar y señalar, lo que permite a los usuarios interactuar con objetos virtuales mediante gestos y movimientos de la mano.
- Interacción con la mirada
- Es la capacidad de realizar un seguimiento de los movimientos oculares del usuario, lo que le permite seleccionar objetos virtuales e interactuar con ellos con la mirada.
- Controles de movimiento de 6 grados de libertad
- Es la capacidad de realizar un seguimiento de la posición y el movimiento de los controles junto con las vinculaciones de D-pad y botones para activar acciones o eventos de desplazamiento en la app.
- Interacción con el mouse
- Es la capacidad de que los usuarios interactúen con objetos a través de un puntero del mouse en el espacio 3D.
Funciones de rendimiento compatibles
Android XR admite las siguientes funciones relacionadas con el rendimiento.
- Foveación con seguimiento ocular
- Permite que una app renderice contenido de mayor resolución solo en el punto focal de los ojos.
- Deformación espacial
- Usa vectores de velocidad y la información de la textura de profundidad para generar fotogramas intermedios que aumentan de manera efectiva la velocidad de fotogramas necesaria para mantener a los usuarios inmersos en tus experiencias.
- Síntesis de fotogramas
- Usa vectores de movimiento y datos de fotogramas proporcionados por la aplicación para sintetizar fotogramas intermedios, lo que mejora la fluidez visual y las velocidades de fotogramas.
- Métricas de rendimiento
- Proporciona métricas de rendimiento de Android XR en el tiempo de ejecución de el dispositivo de realidad extendida, el compositor y la app de realidad extendida actuales. Esto incluye el tiempo de fotogramas de la CPU, el tiempo de fotogramas de la GPU, el uso de la GPU, la frecuencia de la CPU, los fotogramas por segundo y mucho más.
Consulta la Descripción general de las funciones de OpenXR para obtener una lista completa de las funciones y extensiones compatibles.
Motores compatibles
Se admiten los siguientes motores para el desarrollo de OpenXR con Android XR.
Unity
La compatibilidad de Android XR con Unity, basada en OpenXR, permite a los desarrolladores crear experiencias con Unity 6. Obtén más información para compilar apps de realidad extendida con Unity en la descripción general de Unity.
OpenXR™ y el logotipo de OpenXR son marcas comerciales propiedad de The Khronos Group Inc. y están registradas como marcas comerciales en China, la Unión Europea, Japón y el Reino Unido.