Partager via


Multiplateforme utilisant le système de plug-in SDK XR d’Unity

Le développement initial de World Locking Tools ciblait la gamme HoloLens d’appareils par le biais des API XR.WSA (App RV/RA Windows Store) d’Unity. Cela fait partie de ce qui est communément connu sous le nom d’interface Legacy XR d’Unity ou prise en charge RV intégrée d’Unity.

Unity a depuis introduit son architecture de plug-in XR, dont l’objectif est de fournir des abstractions multiplateforme permettant aux développeurs d’accéder aux fonctionnalités communes sur les appareils RV et RA disponibles.

Pendant cette phase de transition, WLT a pris en charge à la fois l’interface Legacy XR pour HoloLens et AR Subsystems/XR Plugin Management pour le multiplateforme. Notez que l’interface Legacy XR est dépréciée depuis Unity 2019 et n’est plus prise en charge depuis Unity 2020.

WLT prend actuellement en charge les sous-systèmes RA version 2.X.Y pour Unity 2019.4 (LTS) et XR Plugin Management version 4.0.7 et ultérieures pour Unity 2020.3 (LTS). Une prise en charge des versions supplémentaires sera déployée dans les publications ultérieures.

Commuter WLT pour cibler le SDK XR

Il est extrêmement simple de commuter WLT pour cibler le SDK XR. Tout d’abord, configurez votre projet pour utiliser le système de plug-in XR.

Si vous utilisez MRTK, suivez ces instructions. Vous trouverez d’autres conseils et remarques plus loin dans cet article.

Si vous n’utilisez pas MRTK, alors suivez ces instructions un peu plus compliquées.

Dans les deux cas, le système XR Plug-in Management d’Unity sera installé et activé, et vous aurez du XR Plug-in provider approprié pour votre plateforme installé et sélectionné.

Une fois que les ressources nécessaires ont été installées, modifiez le type de sous-système d’ancrage dans World Locking Context dans votre scène.

Sélection automatique

L’exécution du script Mixed Reality => World Locking Tools => Configure scene sélectionne le sous-système d’ancrage approprié en fonction de la configuration de votre projet et de votre scène. Vous pouvez exécuter le script Configure scene à plusieurs reprises en toute sécurité. Si la scène est déjà configurée correctement, aucune modification n’est apportée.

Sélection manuelle

  1. Accédez à GameObject WorldLockingManager dans votre scène initiale (ou globale).
  2. Dans l’inspecteur, recherchez WorldLockingContext.
  3. Ouvrez les paramètres de gestion des ancres.
  4. Assurez-vous que la case à cocher « Utiliser les valeurs par défaut » est désélectionnée.
  5. Remplacez le type de sous-système d’ancrage par XRSDK.

Si votre projet et votre scène sont configurés pour utiliser AR Foundation, sélectionnez le sous-système d’ancrage AR Foundation à la place. Les exemples Azure Spatial Anchors (ancres spatiales Azure) affichent une configuration appropriée pour l’utilisation de AR Foundation (une exigence ASA actuelle).

Section gestion des ancres des paramètres de contexte

Utilisation de MRTK avec WLT sur le SDK XR

MRTK, en plus de la valeur exceptionnelle qu’il offre pour l’abstraction des interactions utilisateur en RV et RA, simplifie grandement le ciblage des appareils via le SDK XR. Voici quelques remarques qui peuvent s’avérer utiles lors de la configuration de MRTK pour cibler des appareils spécifiques.

Tout cela suppose que le sous-système d’ancrage WLT Anchor Management a été correctement défini comme décrit dans la section précédente.

Veillez à exécuter Mixed Reality Toolkit => Utilities => UnityAR => Update Scripting Defines lors du changement des cibles du plug-in.

Configuration pour le plug-in Windows XR (HoloLens)

Consultez les instructions complètes dans Bien démarrer avec MRTK et le SDK XR.

Si vous travaillez dans le projet WLT, vous pouvez utiliser le WLT fourni « WLT HL2 MRTKProfile » sur HoloLens2 ou « WLT AR MRTKProfile » sur les appareils mobiles, pour commencer.

WLT avec le plug-in Windows XR a été testé sur Unity 2019.4 et Unity 2020.3, à l’aide des versions suivantes :

  • Gestion du plug-in XR : v3.2.16 (doit fonctionner avec v3.X.Y, X >= 2)
  • Plug-in Windows XR : v2.4.1 (avant les ancres v2.4.1 ont été rompues. Devrait fonctionner v2.4.Y, Y>=1, v2. X.Y, X>=1).
  • Plug-in Mixed Reality OpenXR : v1.2.0 (versions antérieures ont fonctionné, avec des problèmes mineurs. Le dernier plug-in MR OpenXR est fortement recommandé.)

Vous avez seulement besoin de Windows MR Plugin ou de Mixed Reality OpenXR Plugin.

Configuration du plug-in XR ARCore (Android)

Pour obtenir un plug-in XR Android pilotant une application RA MRTK, suivez les instructions de la rubrique Comment configurer MRTK pour iOS et Android

REMARQUE : vous avez besoin de TOUS les éléments suivants :

  • Gestion du plug-in XR (testé v3.2.16, attendu v3.X.Y, X>=2).
  • Sous-systèmes RA (testé v2.1.3, attendu v2.X.Y, X>1).
  • Plug-in XR AR Core (testé v2.1.12, attendu v2.X.Y, X>1).
  • AR Foundation (testé v2.1.10, attendu v2.X.Y, X>1).

Je vous suggère d’utiliser le WLT fourni « WLT AR MRTKProfile » pour commencer.

REMARQUE : si vous rencontrez une erreur de build de type manifest-merger failed, suivez les instructions appropriées ici : https://developers.google.com/ar/develop/unity/android-11-build

Configuration d’autres plug-ins XR (ARKit, Oculus, etc.)

La configuration pour d’autres plateformes peut être similaire à la configuration ARCore, mais n’a pas été testée. Si vous avez accès à ce type d’appareils et si vous avez la possibilité de les tester, vos commentaires peuvent aider la communauté et seront grandement appréciés.