La compatibilidad de Unreal Engine con el desarrollo de XR se basa en el estándar OpenXR, lo que garantiza que las funciones de OpenXR compatibles con Android XR se admitan de forma nativa en Unreal.
Sigue esta guía para obtener información sobre lo siguiente:
- Compatibilidad de Unreal Engine con Android XR
- Conceptos básicos de XR en Unreal Engine
- Desarrolla y publica apps para Android XR
- Complementos de Unreal Engine para Android XR
- Obtén asistencia
- Entrada e interacción
- Extensiones compatibles
Compatibilidad de Unreal Engine con 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 admite la especificación principal de OpenXR, mientras que las extensiones de Android XR para Unreal admiten Android XR y otras extensiones específicas para ayudarte a comenzar rápidamente.
Conceptos básicos de XR en Unreal Engine
Si no tienes experiencia 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 que puedes explorar:
- XR Framework: Aprende a construir un VR Pawn adjuntando un componente de cámara (que representa los auriculares) y Hand Input (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: Configura tu
.uprojectpara la renderización espacial. - Orientación sobre gráficos: Utiliza la renderización foveal, la visualización 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 integral para desarrollar, compilar y publicar para Android. En esta documentación, se explica cómo administrar los permisos de Android dentro del motor, configurar los ajustes de compilación de Android (a través de Project Settings > Platforms > Android) y usar Unreal Automation Tool (UAT).
Además, consulta la documentación sobre cómo 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 inmersivas y, así, proporcione una experiencia del usuario coherente y cómoda en Android XR.
Complementos de Unreal Engine para Android XR
Hay dos complementos principales que brindan compatibilidad para compilar apps de Unreal para Android XR. Estos complementos se administran a través del menú Plugins (Edit > Plugins).
Complemento de OpenXR para Android XR
El complemento de OpenXR de Android XR 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 funciones adicionales para ayudarte a crear experiencias envolventes, como datos avanzados de malla de manos y optimizaciones de hardware específicas. Para aprender a importar y configurar este paquete, sigue la guía de inicio rápido de las extensiones de Android XR.
Obtenga asistencia
Si tienes problemas, consulta la sección de asistencia para Unreal Engine en nuestra página de asistencia para obtener ayuda.
Entrada e interacción
Crear experiencias espaciales interactivas requiere asignar movimientos físicos a acciones digitales. Unreal Engine usa el sistema de entrada mejorada combinado con OpenXR para controlar los controles de movimiento y el monitoreo de manos. Si configuras acciones de entrada y contextos de asignación de entrada, puedes crear interacciones flexibles, como agarrar, señalar 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 cómo compilar estos mecanismos, consulta la documentación de Unreal Engine 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 la sección OpenXR de la configuración del proyecto. 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 las manos se proporciona a través de la extensión Hand Tracking de OpenXR. Puedes acceder a los datos y las poses de las articulaciones de las manos a través de los componentes de XR Tracking en Blueprints o C++.
Interacción con la mirada
Los datos de la mirada se pueden recuperar como una postura 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 de rostros
Accede a datos de expresiones faciales en tiempo real para animar avatares o impulsar interacciones sociales. Esta opción usa la extensión XR_ANDROID_face_tracking.
Extensiones compatibles
Las siguientes extensiones de OpenXR son compatibles cuando se desarrolla para Android XR en Unreal:
| Función o capacidad | Cadena de extensión de OpenXR | Proporcionado por |
|---|---|---|
Persistencia del anclaje del dispositivo |
Extensiones de Android XR para Unreal |
|
Raycast |
Extensiones de Android XR para Unreal |
|
Objetos de seguimiento (planos y profundidad) |
Extensiones de Android XR para Unreal |
|
Seguimiento de objetos |
Extensiones de Android XR para Unreal |
|
Scene Meshing |
Extensiones de Android XR para Unreal |
|
Seguimiento de rostros |
Extensiones de Android XR para Unreal |
|
Seguimiento de ojos |
Extensiones de Android XR para Unreal |
|
Estado de la cámara de transferencia |
Extensiones de Android XR para Unreal |
|
Capa de malla de transferencia |
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 |
Unreal Native OpenXR |
|
Configuración de rendimiento |
Unreal Native OpenXR |
|
Frecuencia de actualización de la pantalla |
Unreal Native OpenXR |
|
Malla de monitoreo de manos |
Extensiones de Android XR para Unreal |
|
Deformación espacial |
Unreal Native OpenXR |
|
Capa de composición Equirect2 |
Unreal Native OpenXR |
|
Configuración de Android Thread |
Unreal Native OpenXR |
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 de Android XR. Para aprovechar estas capacidades espaciales, debes instalar y habilitar el complemento de extensiones de Android XR en tu archivo .uproject. - Unreal Native OpenXR: 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 principal de OpenXR de Unreal Engine.