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.

Infographic showing some of the features of the Mixed Reality Toolkit.

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

  1. Lancez Unity Hub.

  2. Sous l’onglet Projects, cliquez sur New project.

    Screenshot of Unity Hub in Projects tab with the New Project button highlighted.

  3. Cliquez sur la liste déroulante sous New Project, puis sélectionnez la version d’éditeur de votre choix.

    Screenshot of Unity Hub with the Editor version drop-down displayed.

  4. Vérifiez que le modèle choisi est 3D Core.

  5. Dans la zone Project name, entrez un nom pour votre projet, par exemple, « MRTK Tutorial ».

  6. 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.

    Screenshot of Unity Hub with 3D, Project Name, Location, and Create highlighted.

  7. Cliquez sur Create Project (Créer le projet). Votre projet s’ouvre dans Unity.

    Screenshot of your project open in 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

  1. 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 .

  2. 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 :

    Screenshot of Build Settings window open in the unity editor with PC, Mac & Standalone platform highlighted

    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)

    Screenshot of Build Settings window open in the unity editor with Universal Windows Platform highlighted.

  3. Cliquez sur le bouton Switch Platform. Unity affiche une barre de progression pendant le changement de plateforme.

  4. 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.

  1. Téléchargez la dernière version de Mixed Reality Feature Tool à partir du Centre de téléchargement Microsoft.

  2. 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

  3. Dans le dossier décompressé, accédez au fichier exécutable MixedRealityFeatureTool.exe puis utilisez-le pour lancer Mixed Reality Feature Tool.

    Screenshot of Opening MixedRealityFeatureTool.

Importer les packages Mixed Reality Toolkit et OpenXR

  1. Dans Mixed Reality Feature Tool, sélectionnez Start.

    Screenshot of the Mixed Reality Feature Tool opening screen.

  2. Sélectionnez le bouton Parcourir (le bouton « trois points » dans l’image ci-dessous), accédez à votre projet, puis ouvrez-le.

    Open your project

    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.

    Screenshot of the Mixed Reality feature Tool Project Path screen.

  3. Sélectionnez Discover Features.

    Remarque : Vous devrez peut-être patienter quelques secondes, pendant que l’outil actualise les packages à partir des flux.

  4. Sur la page Découvrir des fonctionnalités, notez qu’il existe une liste de six groupes de packages.

    The main groups of packages in the Mixed Reality Feature Tool

  5. 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.

  6. Cliquez sur le bouton « + » à gauche de Platform Support (0 sur 5), puis sélectionnez la dernière version de Mixed Reality OpenXR Plugin.

    Screenshot of package selections in the Mixed Reality Feature Tool.

  7. Une fois vos sélections effectuées, cliquez sur Obtenir des fonctionnalités.

  8. 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.

  9. 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.

  10. Lorsque vous êtes prêt à continuer, sélectionnez Importer. Sur la page Examiner et approuver, vous pouvez consulter des informations sur les packages.

  11. Sélectionnez Approuver.

  12. 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

  1. 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.

    Screenshot of Unity Restart Option.

  2. 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) :

    Screenshot of the menu bar command for opening the MRTK Configurator.

  3. 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.

    Screenshot of MRTK project configurator window with OpenXR selected.

  4. La validation du projet OpenXR s’ouvre. Pour l’instant, vous pouvez l’ignorer.

  5. Sur l’écran Welcome to MRTK!, sélectionnez Show XR Plug-In Management Settings.

    Screenshot of the Show XR Plug-In Management Settings button.

    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.

  1. 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 .

    Screenshot of the Project Settings Window open to the XR Plugin Management Page and PC, Mac & Linux Standalone tab.

  2. Vérifiez que Initialize XR on Startup est sélectionné, puis, sous Plugin Providers, cliquez sur Open XR.

    Screenshot of the Project Settings Window, inside the PC, Mac & Linux Standalone tab, with Initialize XR on Startup selected and the OpenXR Plugin highlighted.

  3. 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.

    Screenshot of Project Settings Window the OpenXR Plugin and Windows Mixed Reality feature group highlighted.

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

  1. 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.

    Screenshot of the Project Settings Window open to the XR Plugin Management Page and Universal Windows Platform tab.

  2. Vérifiez que Initialize XR on Startup est sélectionné, puis, sous Plugin Providers, cliquez sur Open XR.

    Screenshot of Project Settings Window 3.

  3. 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é.

  1. 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.

    Screenshot of warning about incompatible settings.

  2. 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.

    Screenshot of the Fix All button in the OpenXR Project Validation window.

  3. 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.

    Screenshot of the Project Settings window with the OpenXR settings displayed.

  4. Sous Interaction Profiles, notez le bouton signe plus (+).

    Screenshot of the Add Interaction Profile button.

  5. 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

    Screenshot of interaction profiles that should be added.

    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.

    Screenshot of the Fix button for the Eye Gaze interaction profile.

  6. 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

    Screenshot of selected features for OpenXR.

  7. Cliquez sur la liste déroulante Depth Submission Mode, puis sélectionnez Depth 16 Bit.

    Screenshot of Depth 16 Bit selected for Depth Submission Mode.

    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.

  8. Fermez la fenêtre Configuration du projet MRTK .

Configurer les paramètres du lecteur

  1. Dans la colonne de gauche de la fenêtre Project Settings, sélectionnez Player.

  2. 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.

    Screenshot of Unity Publishing Settings with the Project Name box filled in.

    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.

  3. Cliquez sur la liste déroulante Paramètres de publication , puis, dans le champ Nom du package , entrez un nom approprié.

    Screenshot of Unity Publishing Settings with the package name box filled in.

    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.

  4. 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.

Screenshot of the mixed reality menu item open with OpenXR selected

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.

Voir aussi