Configurer un nouveau projet OpenXR avec MRTK
Le moyen le plus simple d’obtenir votre projet Unity configuré pour la réalité mixte est avec mixed Reality Toolkit (MRTK) . MRTK pour Unity est un kit de développement multiplateforme open source conçu pour faciliter la création d’applications de réalité mixte étonnantes.
MRTK fournit un système d’entrée multiplateforme, des composants fondamentaux, ainsi que des modules communs pour les interactions spatiales. Il peut vous aider à accélérer le développement de votre application pour Microsoft HoloLens, les casques immersifs Windows Mixed Reality (VR) et de nombreux autres appareils VR/AR. Le projet vise à réduire les obstacles à l’entrée, permettant à tout le monde de créer des applications de réalité mixte et de contribuer à la communauté au fur et à mesure que nous sommes tous en croissance.
MRTK prend en charge un large éventail de plateformes, notamment :
Microsoft HoloLens
Microsoft HoloLens 2
Casques Windows Mixed Reality
Casques OpenVR (HTC Vive/Oculus Rift)
Suivi de la main Ultraleap
Appareils Android et iOS
Notes
À compter de MRTK3, nous introduisons un nouveau langage de conception de réalité mixte aux développeurs. Pour plus d’informations, consultez la documentation MRTK3.
Notes
Vous pouvez également configurer un nouveau projet OpenXR sans MRTK.
Autres options de configuration non-OpenXR
Windows XR : Microsoft ne recommande pas d’utiliser le plug-in Windows XR pour les nouveaux projets dans Unity 2020. Au lieu de cela, vous devez utiliser le plug-in Mixed Reality OpenXR. Toutefois, si vous utilisez Unity 2019 et que vous avez besoin d’AR Foundation 2.0 pour la compatibilité avec les appareils ARCore/ARKit, ce plug-in active cette prise en charge.
Important
L’utilisation de ce plug-in dans Unity 2019 n’est pas compatible avec Azure Spatial Anchors.
XR hérité : si vous êtes toujours sur Unity 2019 ou version antérieure, Microsoft recommande d’utiliser la prise en charge de XR intégrée héritée. Bien que le plug-in Windows XR soit fonctionnel sur Unity 2019, nous ne le recommandons pas, car il n’est pas compatible avec Azure Spatial Anchors sur Unity 2019.
Si vous démarrez un nouveau projet, nous vous recommandons d’installer Unity 2020 à la place et d’utiliser le plug-in Mixed Reality OpenXR.
Créer un projet Unity
Lancez Unity Hub.
Sous l’onglet Projects, cliquez sur New project.
Cliquez sur la liste déroulante sous New Project, puis sélectionnez la version d’éditeur de votre choix.
Vérifiez que le modèle choisi est 3D Core.
Dans la zone Project name, entrez un nom pour votre projet, par exemple, « MRTK Tutorial ».
Dans la zone Location, cliquez sur l’icône de dossier, puis accédez au dossier dans lequel enregistrer votre projet et sélectionnez-le. Vous pouvez également créer un dossier.
Cliquez sur Create Project (Créer le projet). Votre projet s’ouvre dans Unity.
Attention
Lorsque vous travaillez sur Windows, il existe une limite MAX_PATH de 255 caractères. Unity est affecté par ces limites et risque de ne pas pouvoir être compilé si le chemin d’accès à un fichier dépasse 255 caractères. Par conséquent, nous vous recommandons de stocker votre projet Unity aussi près que possible de la racine du lecteur.
Définir votre cible de build
Dans la barre de menus, sélectionnez Fichier>Paramètres de build... .
Pour créer une application pour Windows Mixed Reality, vous devez choisir une cible de build. Les paramètres de build de la plateforme Windows universelle (UWP) ciblent n’importe quel appareil, y compris les casques immersifs tels que HP Reverb G2. C’est le meilleur choix si vous créez pour HoloLens 2; Toutefois, si vous ciblez la réalité virtuelle de bureau, nous vous recommandons d’utiliser la plateforme pc, Mac & Linux autonome .
Effectuez l’une des actions suivantes :
Si vous ciblez desktop VR :
- Conservez le PC, la plateforme autonome Mac Linux & sélectionnée par défaut sur un nouveau projet Unity :
Si vous ciblez HoloLens 2 :
- Sous Plateforme, sélectionnez Plateforme Windows universelle. Vérifiez que les paramètres suivants sont actifs :
Target device : HoloLens
Architecture : ARM64
Build Type : D3D Project
Target SDK Version : Latest Installed
Minimum Platform Version : 10.0.10240.0
Visual Studio Version : Latest installed
Build and Run on : Local Machine
Build configuration : Release (il y a des problèmes de performances connus avec Debug)
Cliquez sur le bouton Switch Platform. Unity affiche une barre de progression pendant le changement de plateforme.
Une fois le processus de changement de plateforme terminé, fermez la fenêtre Build Settings.
Télécharger et installer l’outil de fonctionnalité de réalité mixte
La meilleure façon de découvrir, mettre à jour et importer des packages de fonctionnalités consiste à utiliser l’outil de fonctionnalité de réalité mixte. Vous pouvez rechercher des packages par nom ou par catégorie, voir leurs dépendances et voir les changements proposés pour votre fichier manifeste de projets avant l’importation.
Téléchargez la dernière version de Mixed Reality Feature Tool à partir du Centre de téléchargement Microsoft.
Une fois le téléchargement terminé, décompressez le fichier et enregistrez-le sur votre ordinateur.
Notes
Avant de pouvoir exécuter le Mixed Reality Feature Tool, vous devez installer le runtime .NET 5.0
Dans le dossier décompressé, accédez au fichier exécutable MixedRealityFeatureTool.exe puis utilisez-le pour lancer Mixed Reality Feature Tool.
Importer les packages Mixed Reality Toolkit et OpenXR
Dans Mixed Reality Feature Tool, sélectionnez Start.
Sélectionnez le bouton Parcourir (le bouton « trois points » dans l’image ci-dessous), accédez à votre projet, puis ouvrez-le.
Notes
La zone Chemin d’accès du projet de l’outil doit contenir une valeur, de sorte qu’elle insère une barre oblique inverse (« _ ») par défaut.
Une fois que vous avez sélectionné un dossier, l’outil vérifie qu’il s’agit d’un dossier de projet Unity valide.
Sélectionnez Discover Features.
Remarque : Vous devrez peut-être patienter quelques secondes, pendant que l’outil actualise les packages à partir des flux.
Sur la page Découvrir des fonctionnalités, notez qu’il existe une liste de six groupes de packages.
Cliquez sur le bouton « + » à gauche de Mixed Reality Toolkit (0 sur 10), puis sélectionnez la version la plus récente de Mixed Reality Toolkit Foundation.
Notes
Le package Mixed Reality Toolkit Foundation est le seul package qui doit être importé et configuré pour utiliser MRTK avec votre projet. Ce package inclut les principaux composants nécessaires à la création d’une application de réalité mixte.
Cliquez sur le bouton « + » à gauche de Platform Support (0 sur 5), puis sélectionnez la dernière version de Mixed Reality OpenXR Plugin.
Une fois vos sélections effectuées, cliquez sur Obtenir des fonctionnalités.
Sélectionnez Validate pour valider les packages sélectionnés. Vous devriez voir une boîte de dialogue indiquant qu’aucun problème de validation n’a été détecté. Lorsque c’est le cas, cliquez sur OK.
Sur la page Importer des fonctionnalités, la colonne de gauche, Fonctionnalités, affiche les packages que vous venez de sélectionner. La colonne de droite, Dépendances requises, affiche toutes les dépendances. Vous pouvez cliquer sur le lien Détails pour chacun de ces éléments pour en savoir plus.
Lorsque vous êtes prêt à continuer, sélectionnez Importer. Sur la page Examiner et approuver, vous pouvez consulter des informations sur les packages.
Sélectionnez Approuver.
Revenez à l’éditeur Unity et cliquez sur une zone vide dans l’interface utilisateur. Vous verrez une barre de progression indiquant que vos packages sont importés.
Configurer les paramètres OpenXR
Une fois qu’Unity a importé les packages, un avertissement s’affiche pour vous demander si vous souhaitez activer les serveurs principaux en redémarrant l’éditeur. Sélectionnez Oui.
Une fois Unity rouvert, le configurateur de projet MRTK doit apparaître. Si ce n’est pas le cas : ouvrez-le manuellement dans la barre de menus en sélectionnant Mixed Reality>Toolkit>Utilities>Configure Project for MRTK (Configurer le projet pour MRTK) :
Sélectionnez Unity OpenXR Plugin (Plug-in OpenXR Unity) pour activer la gestion des plug-ins XR et ajoutez le plug-in Unity OpenXR à votre projet.
La validation du projet OpenXR s’ouvre. Pour l’instant, vous pouvez l’ignorer.
Sur l’écran Welcome to MRTK!, sélectionnez Show XR Plug-In Management Settings.
Cette opération ouvre la fenêtre Paramètres du projet .
Configurer le projet pour la réalité virtuelle de bureau
Si vous développez pour HoloLens2, ignorez cette section et accédez à la suivante, configurez le projet pour HoloLens 2.
Dans la fenêtre Paramètres du projet , vérifiez que vous êtes dans la page Gestion des plug-ins XR et sous l’onglet PC, Mac Linux & Autonome .
Vérifiez que Initialize XR on Startup est sélectionné, puis, sous Plugin Providers, cliquez sur Open XR.
Le plug-in OpenXR se charge, puis deux éléments s’affichent sous OpenXR. Sélectionnez le premier groupe de fonctionnalités Windows Mixed Reality.
Notez qu’il y a maintenant un triangle d’avertissement jaune en regard d’OpenXR. Cela indique que vous avez des paramètres incompatibles qui doivent être résolus. Pour savoir comment résoudre ce problème, ignorez la section suivante sur la configuration de l’HoloLens 2 et poursuivez avec la section suivante, Résolution des paramètres incompatibles.
Configurer le projet pour HoloLens 2
Dans la fenêtre Paramètres du projet , vérifiez que vous êtes dans la page Gestion des plug-ins XR avec les paramètres de la plateforme Windows universelle (onglet Logo Windows) sélectionnés.
Vérifiez que Initialize XR on Startup est sélectionné, puis, sous Plugin Providers, cliquez sur Open XR.
Deux éléments apparaissent sous OpenXR. Sélectionnez le premier, Microsoft HoloLens feature group.
Notez qu’il existe un triangle d’avertissement jaune en regard d’OpenXR. Cela indique que vous avez des paramètres incompatibles qui doivent être résolus.
Résolution des paramètres incompatibles
Les images de cette section affichent les options de l’onglet Plateforme Windows universelle. Toutefois, les instructions sont les mêmes pour l’onglet Desktop VR, à l’exception de l’emplacement indiqué.
Pointez votre curseur sur le triangle d’avertissement jaune en regard d’OpenXR, puis lisez le message dans la fenêtre contextuelle, puis sélectionnez le triangle.
Dans la fenêtre OpenXR Project Validation, plusieurs problèmes sont répertoriés. Sélectionnez le bouton Fix All. REMARQUE : cette liste peut sembler différente selon l’onglet dans lequel vous êtes.
Un problème subsiste et vous indique que vous devez ajouter au moins un profil d’interaction. Pour ce faire, cliquez sur Edit. Vous accédez aux paramètres du plug-in OpenXR dans la fenêtre Project Settings.
Sous Interaction Profiles, notez le bouton signe plus (+).
Cliquez trois fois sur le bouton, chaque fois que vous choisissez un autre profil :
Profil Eye Gaze Interaction
Profil d’interaction avec la main de Microsoft
Profil Microsoft Motion Controller
Si Eye Gaze Interaction Profile ou tout autre profil apparaît avec un triangle jaune à côté, sélectionnez le triangle, puis dans la fenêtre OpenXR Project Validation, cliquez sur le bouton Fix. Lorsque vous avez terminé, fermez la fenêtre OpenXR Project Validation.
Dans la fenêtre Project Settings sous OpenXR Feature Groups, vérifiez que les éléments suivants sont sélectionnés :
Microsoft HoloLens
Suivi de la main
Modèle de contrôleur de mouvement
Cliquez sur la liste déroulante Depth Submission Mode, puis sélectionnez Depth 16 Bit.
Conseil
La réduction du format de profondeur à 16 bits est facultative, mais elle peut améliorer les performances graphiques dans votre projet. Pour en savoir plus, consultez Partage de tampon de profondeur (HoloLens).
Notes
Le paramètre Render Mode, situé juste au-dessus de Depth Submission Mode, est défini par défaut sur Single Pass Instanced. Dans les applications de réalité mixte, la scène est restituée deux fois, une fois pour chaque œil. Le résultat est la « vision stéréoscopique ». Cela double la quantité de calcul nécessaire. il est donc important de sélectionner le chemin de rendu le plus efficace dans Unity pour économiser à la fois sur le temps processeur et GPU. Le rendu d’instance à passage unique est le meilleur choix ici : nous vous recommandons de l’activer par défaut pour chaque projet. Pour en savoir plus à ce sujet, consultez la documentation Unity.
Fermez la fenêtre Configuration du projet MRTK .
Configurer les paramètres du lecteur
Dans la colonne de gauche de la fenêtre Project Settings, sélectionnez Player.
Notez que dans la fenêtre Lecteur , la zone Nom du produit est déjà remplie. Il s’agit du nom de votre projet et sera le nom affiché dans le menu Démarrer HoloLens.
Conseil
Pour faciliter la localisation de l’application pendant le développement, ajoutez un trait de soulignement devant le nom pour qu’il apparaisse au début d’une liste.
Cliquez sur la liste déroulante Paramètres de publication , puis, dans le champ Nom du package , entrez un nom approprié.
Notes
Le nom de package est l’identificateur unique de l’application. Si vous souhaitez éviter le remplacement des versions précédemment installées de l’application avec le même nom, vous devez modifier cet identificateur avant de déployer l’application.
Fermez la fenêtre Paramètres du projet.
Optimisation
Si vous développez pour HoloLens 2, dans la barre de menus, sélectionnez le projet > Mixed Reality > Appliquer les paramètres de projet recommandés pour HoloLens 2 pour obtenir de meilleures performances d’application.
Vous êtes maintenant prêt à commencer à développer avec OpenXR dans Unity !
Exemples de projets Unity
Consultez le dépôt d’exemples OpenXR Mixed Reality pour des exemples de projets Unity montrant comment créer des applications Unity pour les casques HoloLens 2 ou Mixed Reality à l’aide du plug-in Mixed Reality OpenXR.