Multiplataforma mediante el sistema XR SDK Plugin de Unity
El desarrollo inicial de World Locking Tools se ha dirigido a la familia de dispositivos HoloLens a través de las API XR.WSA de Unity (aplicación de VR/AR en la Tienda Windows). Esto forma parte de lo que se conoce comúnmente como la interfaz Legacy XR de Unity, o la compatibilidad integrada con VR de Unity.
Unity ha introducido desde entonces su arquitectura de complementos de XR, cuyo objetivo es proporcionar abstracciones multiplataforma que ofrecen a los desarrolladores acceso a características comunes en los dispositivos VR y AR disponibles.
Durante esta fase de transición, WLT ha admitido la interfaz Legacy XR para HoloLens y AR Subsystems
/XR Plugin Management
para multiplataforma. Hay que tener en cuenta que la interfaz Legacy XR está obsoleta desde Unity 2019, y ya no es compatible a partir de Unity 2020.
WLT admite actualmente AR Subsystems con versiones 2.X.Y para Unity 2019.4 (LTS) y XR Plugin Management con versiones 4.0.7 y posteriores para Unity 2020.3 (LTS). La compatibilidad con versiones posteriores estará disponible en próximos lanzamientos.
Cambio de WLT al destino XR SDK
Usar WLT para XR SDK es extremadamente sencillo. En primer lugar, configure el proyecto para que use el sistema XR Plugin.
Si usa MRTK
, siga estas instrucciones. Más adelante en este artículo hay sugerencias y notas adicionales.
Si no usa MRTK
, siga estas instrucciones algo más complicadas.
En cualquier caso, terminará con el sistema XR Plug-in Management
de Unity instalado y habilitado, y con una instancia de XR Plug-in provider
adecuada para la plataforma instalada y seleccionada.
Una vez instalados los recursos necesarios, cambie el tipo de subsistema de anclaje en el contexto de bloqueo del mundo de la escena.
Selección automática
Al ejecutar el script Mixed Reality => World Locking Tools => Configure scene
, se seleccionará el subsistema de anclaje correcto en función de cómo se configuren el proyecto y la escena. Es seguro ejecutar el script Configure scene
de manera repetida. Si la escena ya está configurada correctamente, no se realizará ningún cambio.
Selección manual
- Vaya al elemento GameObject de WorldLockingManager en la escena inicial (o global).
- En el inspector, busque WorldLockingContext.
- Abra la configuración de administración de anclajes.
- Asegúrese de que la casilla "Use Defaults" (Usar valores predeterminados) está desactivada.
- Cambie el tipo de subsistema de anclaje a
XRSDK
.
Si el proyecto y la escena están configurados para usar AR Foundation
, seleccione en su lugar el subsistema de anclaje AR Foundation
. Los ejemplos de Azure Spatial Anchors muestran una configuración adecuada para usar AR Foundation
(actualmente un requisito de ASA).
Uso de MRTK con WLT en XR SDK
MRTK, además del increíble valor que proporciona para abstraer las interacciones del usuario en VR y AR, simplifica enormemente el destino de los dispositivos a través de XR SDK. Las siguientes son notas que pueden resultar útiles al configurar MRTK para dirigirse a dispositivos específicos.
En todas ellas se supone que el subsistema de anclajes de administración de anclajes de WLT se ha establecido correctamente, tal y como se describe en la sección anterior.
Asegúrese de ejecutar Mixed Reality Toolkit => Utilities => UnityAR => Update Scripting Defines
al cambiar los destinos del complemento.
Configuración para Windows XR Plugin (HoloLens)
Consulte las instrucciones completas en Introducción a MRTK y XR SDK.
Si trabaja en el proyecto de WLT, puede usar la instancia de WLT proporcionada, "WLT HL2 MRTKProfile", en HoloLens2 o "WLT AR MRTKProfile" en dispositivos móviles, para empezar.
WLT con Windows XR Plugin se ha probado en Unity 2019.4 y Unity 2020.3, con las siguientes versiones:
- XR Plugin Management: v3.2.16 (se espera que funcione con v3. X.Y, X >= 2)
- Complemento XR de Windows: v2.4.1 (antes de los anclajes v2.4.1 estaban rotos. Se espera que funcione v2.4.Y, Y>=1, v2. X.Y, X>=1).
- Complemento OpenXR de Mixed Reality: v1.2.0 (versiones anteriores funcionaban, con problemas menores. Se recomienda encarecidamente el complemento MR OpenXR más reciente).
Solo necesita uno: Windows MR Plugin
o Mixed Reality OpenXR Plugin
.
Configuración para ARCore XR Plugin (Android)
Para obtener una instancia de Android XR Plugin que dirija una aplicación AR de MRTK, siga las instrucciones de Configuración de MRTK para iOS y Android.
NOTA: Necesita todo lo siguiente:
- XR Plugin Management (se probó v3.2.16, se esperaba v3.X.Y, X>=2).
- AR Subsystems (se probó v2.1.3, se esperaba v2. X.Y, X>1).
- AR Core XR Plugin (se probó v2.1.12, se esperaba v2. X>1).
- AR Foundation (se probó v2.1.10, se esperaba v2.X.Y, X>1).
Se recomienda usar la instancia de WLT proporcionada, "WLT AR MRTKProfile", para empezar.
NOTA: Si se produce un error de compilación sobre manifest-merger, siga las instrucciones adecuadas aquí: https://developers.google.com/ar/develop/unity/android-11-build.
Configuración de otros complementos XR (ARKit, Oculus, etc.)
La configuración para otras plataformas puede ser análoga a la configuración de ARCore, pero no se ha probado. Si tiene acceso a estos dispositivos y la oportunidad de probarlos, cualquier comentario ayudaría a la comunidad y sería muy bien recibido.