Soporte de headset y glasses de EasyAR
El SDK de EasyAR ofrece potentes capacidades AR multiplataforma, y su concepto de diseño también se adapta a los emergentes dispositivos de spatial computing: los headset. Este artículo explica cómo EasyAR da soporte a headset devices y cómo los desarrolladores pueden usar estas funciones para construir immersive experiences.
Explicación de términos
En este documento, "headset" o "Headset" se refiere específicamente a un tipo de dispositivo informático que se lleva en la cabeza y que admite interacción immersive o see-through. Estos dispositivos pueden mostrar contenido virtual frente a los ojos del usuario, habilitando experiencias de augmented reality (AR) o mixed reality (MR). Esto incluye:
- Optical See-Through, OST Headset: permite ver directamente el mundo real a través de lentes semitransparentes.
- Video See-Through, VST Headset: captura el mundo real mediante una camera y lo muestra como un video stream. Habitualmente, los headset también se llaman AR glasses, MR glasses o VR helmet. Los nombres concretos pueden variar según el fabricante y el tipo de dispositivo, pero en este artículo usamos "headset" para referirnos de forma uniforme a este tipo de dispositivos.
Principio básico de funcionamiento de los headset
Para entender mejor el principio de soporte de EasyAR para headset, primero debemos comprender el flujo básico de trabajo de estos dispositivos:
- Environmental sensing: mediante varias cámaras integradas, depth sensor (como iToF) y inertial measurement unit (IMU), el dispositivo percibe en tiempo real la estructura geométrica, las condiciones de iluminación y las superficies de los objetos del entorno.
- Spatial computing: según los datos de los sensores, el sistema SLAM rastrea en tiempo real la 6DoF pose de la cabeza del usuario (posición + orientación).
- Content rendering and display: renderiza contenido 3D (como modelos y efectos) según la pose del dispositivo y proyecta el resultado en la pantalla. En modo VR, solo se muestran imágenes virtuales puras; en modo AR/MR, las imágenes virtuales se combinan con el entorno real (imagen de camera VST o fondo see-through OST).
- Interaction system: recibe instrucciones del usuario y responde mediante controller, reconocimiento de gesture, voz o eye tracking.
Principio de soporte de EasyAR para headset
EasyAR no reemplaza el spatial tracking nativo ni el rendering pipeline del headset, sino que trabaja junto a ellos como un "spatial computing enhancer". Como engine de algoritmos AR profesional, proporciona capacidades de spatial perception y computing para varios escenarios AR, colaborando de forma eficiente con el sistema original del dispositivo.
| Scope of Responsibility | Role Division |
|---|---|
| 6DOF head tracking, display rendering, basic interaction, etc. | SDK/runtime nativo del headset |
| Capacidades avanzadas de percepción como image/object recognition y tracking, además de large-scale spatial positioning | EasyAR SDK |
El SDK de EasyAR proporciona funciones AR centrales para comprender el mundo, como image/object recognition, sparse reconstruction, dense reconstruction y large-scale spatial positioning. Es responsable de "entender" el mundo y decirle a la aplicación del headset dónde colocar el contenido virtual.
El SDK de EasyAR se integra en el framework de desarrollo de aplicaciones del headset (normalmente Unity o Unreal) como plugin o library. Recibe el data stream original del sistema del dispositivo, lo procesa y calcula, y luego genera una pose matrix relativa al spatial coordinate system del dispositivo. Finalmente, el rendering pipeline del engine del headset dibuja los objetos virtuales en la posición correcta.
Estado de soporte y métodos de implementación
EasyAR ofrece soporte completo para las principales platform de desarrollo de headset, implementado principalmente de dos maneras:
- A través de Unity/Unreal Engine: es la forma más común y recomendada. Los fabricantes de headset suelen ofrecer plugins Unity/Unreal o XR SDK dedicados. EasyAR puede integrarse sin problemas en los SDK de los fabricantes.
- A través de plataforma Native: para escenarios que requieren rendimiento extremo o desarrollo nativo específico, puede usar las interfaces nativas de EasyAR en C++, Java u Objective-C. Esto suele requerir que el desarrollador gestione por sí mismo el interface docking con los datos de bajo nivel del dispositivo.
EasyAR ya ha sido probado y verificado en varias principales platform de headset mediante Unity. Los dispositivos actualmente confirmados como soportados son los siguientes:
| Modelo de dispositivo headset | Requisito de versión de sistema/SDK |
|---|---|
| Apple Vision Pro | visionOS 2 o posterior |
| PICO 4 Ultra1 | PICO Unity Integration SDK 3.4.0 o posterior |
| PICO Space Pro1 | PICO Unity Integration SDK 3.4.0 o posterior |
| Rokid Max Pro (usando Rokid AR Studio u otros métodos oficiales compatibles de Rokid) |
Rokid Unity OpenXR Plugin 3.0.3 o posterior |
| XREAL Air2 Ultra | XREAL SDK 3.1 o posterior |
| Xrany X1 | Xrany Yuanni SDK |
Nota
Rokid Max Pro puede soportar Rokid UXR 3 mediante Rokid Unity OpenXR Plugin, pero se recomienda usar XR Interaction Toolkit, especialmente para uso cross-device.
Importante
Tanto Apple Vision Pro como XREAL requieren su correspondiente enterprise authorization para poder usarse. Si tiene dudas, contacte con el área comercial.
- Debido a las restricciones de interface authorization de Apple Vision Pro, solo se admiten dispositivos con Apple enterprise API license.
- Debido a las restricciones de interface authorization de XREAL, solo se admiten dispositivos con enterprise authorization.
Para headset devices de otros fabricantes no mencionados arriba, EasyAR ofrece un método de acceso ampliado como custom cameras. Puede consultar Create an EasyAR Headset Extension Package para realizar el acceso, y completar usted mismo la integración.
Esto suele implicar los siguientes pasos:
- Obtener permisos de desarrollo del dispositivo: solicite una developer account y la SDK documentation del headset objetivo.
- Obtener flujos de datos de sensores: obtenga del SDK del dispositivo datos necesarios como camera images (video frames) y camera parameters.
- Llamar a la API de EasyAR: use la API de bajo nivel de EasyAR para enviar los sensor data obtenidos a EasyAR
FrameSourcepara su procesamiento. - Obtener y aplicar los resultados del cálculo: obtenga los resultados (camera pose) del engine de EasyAR y aplíquelos a su 3D rendering engine.
Proporcionamos guías de desarrollo detalladas y sample code para ayudarle a completar este proceso. Si encuentra problemas durante la integración, le invitamos a buscar soporte técnico en nuestra developer community.
Funciones principales disponibles
En dispositivos headset, puede aprovechar completamente la matrix de funciones de EasyAR para crear rich spatial applications:
- Planar Image Tracking: reconoce y rastrea imágenes predefinidas, superponiendo videos dinámicos o modelos 3D sobre ellas.
- 3D Object Tracking: reconoce y rastrea modelos 3D predefinidos (como juguetes y cajas de productos), permitiendo que el virtual content interactúe con ellos.
- Sparse Spatial Map: escanea el entorno para generar un 3D visual map y ofrece funciones de visual positioning y tracking. El mapa generado puede guardarse o compartirse en tiempo real entre varios dispositivos.
- Dense Spatial Map: escanea y genera un dense point cloud map y un mesh model (Mesh) del entorno, logrando la physical occlusion entre objetos virtuales y reales, lo que aumenta enormemente la sensación de inmersión.
- Cloud Image Recognition: se conecta a la cloud database de EasyAR para reconocer y gestionar una gran cantidad de imágenes, útil para escenarios como exposiciones y educación.
- Mega Large-Scale Spatial Positioning: solución de spatial computing a nivel ciudad que se conecta al cloud positioning service de EasyAR para lograr un posicionamiento y tracking estables, rápidos y precisos, ampliando de forma notable el alcance de las experiencias AR.
Guías específicas por plataforma
Para ayudarle a empezar rápidamente en plataformas concretas, hemos preparado guías detalladas de integración multiplataforma. Haga clic en las pestañas de abajo para ver los tutoriales quick-start de cada plataforma.
- Introduction
- Using Headset Samples
- Enabling Headset Support
- Project Configuration
- Create an EasyAR Headset Extension Package