La compatibilidad de Unreal Engine para el desarrollo de realidad extendida se basa en el estándar OpenXR, lo que garantiza que las funciones de OpenXR compatibles con Android XR sean compatibles de forma nativa en Unreal.
Sigue esta guía para obtener información sobre lo siguiente:
- Compatibilidad de Unreal Engine para Android XR
- Conceptos básicos de Unreal Engine XR
- Desarrollo y publicación de apps para Android XR
- Complementos de Unreal Engine para Android XR
- Obtén asistencia
- Entrada e interacción
- Extensiones compatibles
Compatibilidad de Unreal Engine para Android XR
Cuando compilas apps de Unreal para Android XR, puedes aprovechar las capacidades de computación espacial de las versiones más recientes de Unreal Engine 5. Unreal Engine 5 proporciona compatibilidad con la especificación principal de OpenXR, mientras que las extensiones de Android XR para Unreal proporcionan compatibilidad con Android XR y otras extensiones específicas para ayudarte a comenzar rápidamente.
Conceptos básicos de Unreal Engine XR
Si eres nuevo en el desarrollo de Unreal o XR, puedes consultar la documentación de desarrollo de XR de Unreal para comprender los conceptos y flujos de trabajo básicos. Estas son algunas áreas clave para explorar:
- Framework de XR: Aprende a construir un peón de RV conectando un componente de cámara (que representa el visor) y una entrada de mano (que representa las manos) a una raíz de escena compartida.
- Complemento de OpenXR: Es la interfaz principal para la compatibilidad con dispositivos Android XR.
- Arquitectura de XR: Cómo Unreal controla la pila tecnológica y los subsistemas de XR.
- Configuración del proyecto: Cómo configurar tu
.uprojectpara la renderización espacial. - Guía de gráficos: Cómo utilizar la renderización foveada, la vista múltiple y el sombreado de velocidad variable (VRS).
- Rendimiento y generación de perfiles: Herramientas y técnicas para optimizar tu aplicación de XR.
- Prácticas recomendadas: Lineamientos de diseño y desarrollo para crear experiencias de XR cómodas y envolventes.
Desarrolla y publica apps para Android
Unreal Engine proporciona documentación completa para desarrollar, compilar, y publicar para Android. Esta documentación abarca la administración de permisos de Android dentro del motor, la configuración de los parámetros de configuración de compilación de Android (a través de Project Settings > Platforms > Android) y el uso de la herramienta de automatización de Unreal (UAT).
Además, consulta la documentación para empaquetar y distribuir apps para Android XR para conocer los requisitos específicos que se aplican a las apps espaciales que se distribuyen en Google Play Store. Asegúrate de que tu app también cumpla con los lineamientos de calidad para experiencias envolventes para proporcionar una experiencia del usuario coherente y cómoda en Android XR.
Complementos de Unreal Engine para Android XR
Existen dos complementos principales que proporcionan compatibilidad para compilar apps de Unreal para Android XR. Estos complementos se administran a través del menú Plugins (Edit > Plugins).
Complemento de Android XR OpenXR
El complemento de Android XR OpenXR es la interfaz principal del motor que agrega compatibilidad con Android XR a Unreal. Implementa las extensiones de OpenXR necesarias para el seguimiento espacial, la comprensión del entorno y la percepción. Para obtener información sobre cómo agregar y configurar este complemento, consulta la documentación de OpenXR de Unreal Engine.
Extensiones de Android XR para Unreal
Las extensiones de Android XR para Unreal complementan la compatibilidad básica con OpenXR, incluidas las funciones adicionales para ayudarte a crear experiencias envolventes, como datos avanzados de malla de manos y optimizaciones de hardware específicas. Para obtener información sobre cómo importar y configurar este paquete, sigue la guía de inicio rápido de las extensiones de Android XR.
Obtén asistencia
Si tienes problemas, consulta la sección de asistencia de Unreal Engine en nuestra página de asistencia para obtener ayuda.
Entrada e interacción
Para crear experiencias espaciales interactivas, es necesario asignar movimientos físicos a acciones digitales. Unreal Engine usa el sistema de entrada mejorada combinado con OpenXR para controlar los controladores de movimiento y el monitoreo de manos. Si configuras acciones de entrada y contextos de asignación de entrada, puedes crear interacciones flexibles, como tomar, apuntar y navegar por la IU, que funcionan sin problemas en diferentes métodos de entrada de Android XR.
Para obtener una guía completa sobre la creación de estos mecanismos, consulta la documentación de Unreal Engine's sobre cómo crear experiencias interactivas de XR.
Android XR admite los siguientes métodos de interacción específicos en Unreal Engine:
Perfiles de interacción
Puedes configurar perfiles de interacción en Project Settings en la sección OpenXR. Esto permite que tu app mantenga una asignación de entrada coherente en diferentes controladores y métodos de seguimiento.
Interacción con la mano
La interacción con la mano se proporciona a través de la extensión de monitoreo de manos de OpenXR. Puedes acceder a los datos y las poses de las articulaciones de la mano a través de los componentes de seguimiento de XR en Blueprints o C++.
Interacción de mirada
Los datos de la mirada se pueden recuperar como una pose de entrada estándar, lo que te permite controlar el enfoque de la IU o las funciones de presencia social. Esto requiere el permiso android.permission.EYE_TRACKING_FINE.
Seguimiento facial
Accede a datos de expresiones faciales en tiempo real para animar avatares o controlar interacciones sociales. Esto usa la XR_ANDROID_face_tracking
extensión.
Extensiones compatibles
Se admiten las siguientes extensiones de OpenXR cuando se desarrolla para Android XR en Unreal:
| Función o capacidad | String de extensión de OpenXR | Proporcionado por |
|---|---|---|
Persistencia de anclaje del dispositivo |
Extensiones de Android XR para Unreal |
|
Raycast |
Extensiones de Android XR para Unreal |
|
Objetos rastreables (planos/profundidad) |
Extensiones de Android XR para Unreal |
|
Seguimiento de objetos |
Extensiones de Android XR para Unreal |
|
Malla de escena |
Extensiones de Android XR para Unreal |
|
Seguimiento facial |
Extensiones de Android XR para Unreal |
|
Seguimiento de ojos |
Extensiones de Android XR para Unreal |
|
Estado de la cámara de transmisión |
Extensiones de Android XR para Unreal |
|
Capa de malla de transmisión |
Extensiones de Android XR para Unreal |
|
Textura de profundidad |
Extensiones de Android XR para Unreal |
|
Estimación de luz |
Extensiones de Android XR para Unreal |
|
Métricas de rendimiento |
Extensiones de Android XR para Unreal |
|
Resolución recomendada |
Extensiones de Android XR para Unreal |
|
Interacción con la mano |
Extensiones de Android XR para Unreal |
|
Utilidades de depuración |
OpenXR nativo de Unreal |
|
Configuración de rendimiento |
OpenXR nativo de Unreal |
|
Frecuencia de actualización de la pantalla |
OpenXR nativo de Unreal |
|
Malla de monitoreo de manos |
Extensiones de Android XR para Unreal |
|
Space Warp |
OpenXR nativo de Unreal |
|
Capa de composición Equirect2 |
OpenXR nativo de Unreal |
|
Configuración de subprocesos de Android |
OpenXR nativo de Unreal |
|
Atenuación global de transmisión |
Extensiones de Android XR para Unreal (v1.0.0 estable) |
|
Propiedades de extensión del sistema |
Extensiones de Android XR para Unreal (v1.0.0 estable) |
|
Entidades espaciales y seguimiento de marcadores |
Extensiones de Android XR para Unreal (v1.0.0 estable) |
Las extensiones se proporcionan a través de una de estas fuentes:
- Extensiones de Android XR para Unreal: Son extensiones específicas de Google
(
ANDROID) desarrolladas para la plataforma Android XR. Para utilizar estas capacidades espaciales, debes instalar y habilitar el complemento de extensiones de Android XR en tu .uproject - OpenXR nativo de Unreal: Estas funciones aprovechan las extensiones estándar de Khronos (
KHR), Extension (EXT) y Meta (FB) que ya están integradas y se mantienen directamente en el complemento OpenXR principal de Unreal Engine.