Android XR admite OpenXR a través de la especificación de OpenXR 1.1 y una larga lista de extensiones de proveedores externos. El uso de estas extensiones te ofrece esa experiencia familiar cuando desarrollas para XR. Algunas de estas capacidades requieren permisos de tiempo de ejecución de Android. Si deseas compilar directamente en las APIs de OpenXR, puedes encontrar los archivos de encabezado necesarios en el repositorio jetpack-xr-natives.
Extensiones de proveedores de Android XR
Nombre de la extensión |
Descripción |
Versión de la API de Spatial |
|---|---|---|
Los anclajes creados por una aplicación a través de |
||
Usa la IK para determinar la posición del cuerpo en función de la posición de la cabeza y las manos. Permisos: |
||
Para dispositivos que admiten varios modos de combinación del entorno. Permisos: |
||
Esta extensión permite que la aplicación solicite mapas de profundidad del entorno del mundo real alrededor del visor y consulte las resoluciones de profundidad admitidas en el momento de la creación. Permisos: |
||
Esta extensión permite que la aplicación persista. Permisos: |
||
Esta extensión permite que las aplicaciones determinen qué extensiones admite la configuración actual del sistema. |
||
Esta extensión permite que las aplicaciones obtengan la posición y la orientación de los ojos del usuario, así como el estado del seguimiento de ojos. Permisos: |
||
Esta extensión permite que las aplicaciones obtengan pesos de formas de combinación y rendericen expresiones faciales en experiencias de XR. Permisos: |
||
Esta extensión permite que las aplicaciones obtengan datos de seguimiento facial de varias fuentes de datos. Permisos: |
||
Esta extensión habilita las entradas de monitoreo de manos representadas como una malla de mano dinámica. Permisos: |
||
Esta extensión permite que la aplicación solicite datos que representan la iluminación del entorno del mundo real alrededor del visor. Permisos: |
||
Esta extensión se basa en la extensión básica Permisos: |
||
Esta extensión proporciona un |
||
La cámara de transferencia puede tardar en iniciarse y es posible que no esté disponible de inmediato. |
||
Esta extensión proporciona APIs para enumerar y consultar varios contadores de métricas de rendimiento del dispositivo de XR actual. |
||
Esta extensión permite que la aplicación realice raycasts en objetos rastreables del entorno. Permisos: |
||
Esta extensión permite que el tiempo de ejecución notifique a la aplicación cuando cambia la resolución recomendada. |
||
El entorno predeterminado del usuario puede estar en una variedad de estados con una combinación de un modo de fusión y una modalidad de entrada. |
||
Esta extensión tiene como objetivo proporcionar mallas que representen aproximadamente los objetos físicos en el entorno del usuario. |
||
La función En cambio, esta extensión crea un anclaje espacial que se representa con un identificador Permisos: |
||
Esta extensión proporciona la capacidad de seguimiento de anotaciones para la extensión Permisos: |
||
Esta extensión se basa en Permisos: |
||
Esta extensión se basa en XR_EXT_spatial_entity y proporciona funcionalidad de raycast para las capacidades espaciales existentes. Permisos: |
||
Esta extensión permite que las aplicaciones creen y adjunten anclajes a entidades espaciales. Permisos: |
||
Esta extensión se basa en Permisos: |
||
Esta extensión permite que la aplicación acceda a los objetos rastreables del entorno físico. Permisos: |
||
Esta extensión permite hacer un seguimiento de imágenes planas según lo especificado por conjuntos de imágenes de referencia de entrada. Permisos: |
||
Esta extensión habilita el seguimiento de marcadores físicos. Permisos: |
||
Esta extensión habilita el seguimiento de objetos físicos. Permisos: |
||
Esta extensión permite el seguimiento de códigos QR físicos y la decodificación de datos de códigos QR. Permisos: |
||
Esta extensión permite que las aplicaciones creen un espacio de referencia |
Extensiones de terceros
Nombre de la extensión |
Descripción |
Versión de la API de Spatial |
|---|---|---|
Es posible que algunas aplicaciones necesiten acceder a dispositivos de interacción de XR sin presentar contenido de imagen en la pantalla o las pantallas. |
||
Esta extensión agrega una estructura opcional que se puede incluir en la cadena |
||
Debido a la naturaleza de la interfaz de OpenXR, hay muy poca información de errores disponible para el desarrollador y la aplicación. |
||
Esta extensión permite que las aplicaciones ubiquen las articulaciones individuales de las entradas de monitoreo de manos. Permisos: |
||
Esta extensión define una API para que la aplicación proporcione sugerencias de rendimiento al tiempo de ejecución y para que el tiempo de ejecución envíe notificaciones relacionadas con el rendimiento a la aplicación. Esto permite que ambas partes logren un equilibrio adecuado entre el rendimiento necesario de la CPU y la GPU, la sostenibilidad térmica y una buena experiencia del usuario constante durante toda la sesión. |
||
En plataformas que admiten el ajuste dinámico de la frecuencia de actualización de la pantalla. |
||
Esta extensión permite que la aplicación modifique y consulte un estado mutable específico asociado a una cadena de intercambio. |
||
La foveación en el contexto de la XR es una técnica de renderización que permite que el área de una imagen cercana al punto focal o la fóvea del ojo se muestre con una resolución más alta que las áreas de la periferia. |
||
En los HMD de Facebook, los desarrolladores pueden crear perfiles de foveación generados por el tiempo de ejecución para las propiedades ópticas y el rendimiento. |
||
La API de gráficos de Vulkan requiere que se aplique una imagen a la cadena de intercambio para aplicar un patrón de foveación. |
||
Esta extensión proporciona compatibilidad para habilitar la tecnología de Space Warp en la aplicación. |
||
Esta extensión debe proporcionarla los tiempos de ejecución que admiten aplicaciones que usan APIs de OpenGL ES para la renderización. |
||
Cuando la aplicación crea un objeto XrInstance en sistemas Android. |
||
Una actividad común en la XR es ver una secuencia de imágenes. |
||
Para que la RE sea cómoda, es importante que las aplicaciones rendericen los fotogramas de forma rápida y coherente. |
||
La escala y el sesgo de color se aplican a un color de capa durante la composición, después de su conversión a la representación alfa premultiplicada. |
||
Esta extensión agrega un tipo de capa adicional que permite el muestreo directo de mapas de cubos. |
||
Esta extensión agrega un tipo de capa adicional en el que el tiempo de ejecución de XR debe asignar una textura que proviene de una cadena de intercambio al interior de una sección cilíndrica. Se puede imaginar de la misma manera en que se ve una pantalla de televisión curva para un usuario. |
||
Esta extensión define un tipo de capa adicional que permite que las aplicaciones envíen imágenes de profundidad junto con imágenes de color en capas de proyección. |
||
Esta extensión agrega un tipo de capa adicional en el que el tiempo de ejecución de XR debe asignar una imagen codificada equirrectangular que proviene de una cadena de intercambio al interior de una esfera. |
||
Esta extensión agrega un tipo de capa adicional en el que el tiempo de ejecución de XR debe asignar una imagen codificada equirrectangular que proviene de una cadena de intercambio al interior de una esfera. Esta extensión usa una parametrización diferente que se ajusta más a la formulación de |
||
Esta extensión proporciona dos funciones para convertir entre el tiempo monotónico de timespec y |
||
Esta extensión permite el uso de la API de gráficos de Vulkan en un tiempo de ejecución de OpenXR. |
||
Esta extensión permite el uso de la API de gráficos de Vulkan en un tiempo de ejecución de OpenXR. |
||
En algunas plataformas, antes de que se pueda realizar la carga, el cargador debe inicializarse con parámetros específicos de la plataforma. |
||
En Android, algunas implementaciones de cargadores requieren que la aplicación proporcione información adicional en la inicialización. |
||
Esta extensión permite que una aplicación especifique que las imágenes de la cadena de intercambio se deben crear de manera que se puedan usar como archivos adjuntos de entrada. En el momento de escribir este fragmento, solo afecta a los búferes de intercambio de Vulkan. |
||
Esta extensión permite que la aplicación vincule una o más acciones digitales a un panel táctil o a una palanca analógica como si fuera un pad direccional, ya que define rutas de componentes adicionales para sugerir vinculaciones. |
||
Esta extensión define un identificador único universal que sigue el RFC 4122. |
||
Esta extensión permite la composición de capas probada en profundidad. |
||
Esta extensión proporciona un Permisos: |
||
Esta extensión define cuatro poses de acción de uso frecuente para todos los perfiles de interacción de manos del usuario, incluidos los dispositivos de monitoreo de manos y los dispositivos de control de movimiento. |
||
Esta extensión admite la provisión de una máscara de dibujo por vista para las aplicaciones. |
||
La renderización foveal con seguimiento ocular renderiza una menor densidad de píxeles en la periferia de la mirada del usuario. Permisos: |
||
La extensión Permisos: |
||
Esta extensión define un nuevo "identificador de postura estándar" para los perfiles de interacción, llamado "palm_ext". |
||
Los visores de Varjo proporcionan pantallas con una densidad de píxeles extremadamente alta en el área central de la pantalla. Permisos: |
||
Esta extensión agrega un nuevo tipo de configuración de vista, |
||
Con esta extensión, una aplicación basada en Vulkan puede pasar |
||
La extensión Permisos: |
||
Esta extensión no define un nuevo tipo de capa de composición. |
||
|
||
Esta extensión permite que las aplicaciones soliciten el uso de opciones de procesamiento, como el enfoque o el supermuestreo, en una capa de composición. |
||
Esta extensión presenta la función xrLocateSpacesKHR. |
||
La especificación principal de OpenXR contiene dos tipos de espacios de referencia |
||
Esta extensión se basa en Permisos: |
||
Esta extensión permite que las aplicaciones descubran y correlacionen entidades espaciales en diferentes sesiones de la aplicación. Permisos: |
||
Esta extensión se basa en Permisos: |
||
Esta extensión se basa en |
||
Esta extensión presenta los conceptos y los fundamentos para la comprensión de escenas y el razonamiento espacial en OpenXR. |
||
En los sistemas de XR, hay ciertas operaciones que tardan en ejecutarse y no se completan de manera razonable dentro de un bucle de fotogramas normal. |
||
Es posible que los dispositivos de XR usen un espacio de color diferente al de muchos monitores que se usan en el desarrollo. |
||
Esta extensión proporciona una marca que, cuando se aplica a una capa de composición, invierte la interpretación del valor alfa en las imágenes de la cadena de intercambio de la capa. |
||
Esta extensión proporciona compatibilidad para habilitar la síntesis de fotogramas en aplicaciones basadas en datos adicionales proporcionados por la aplicación. |
||
Proporciona operaciones de seguimiento de imágenes de Qualcomm para objetos rastreables. |
||
Proporciona operaciones de seguimiento de códigos QR de Qualcomm para objetos rastreables. |
||
Esta extensión introduce un nuevo evento para notificar cuando el sistema detectó el cambio de presencia del usuario. |
||
Esta extensión amplía los tamaños máximos de los nombres de struct y proporciona una nueva función para acceder a estos nuevos nombres extendidos. |
||
|
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.