Exercice - Bien démarrer avec la communication à distance holographique PC

Effectué

Bienvenue dans les tutoriels HoloLens 2. Dans ce tutoriel, vous allez apprendre à créer une expérience de réalité mixte qui comprend des éléments d’interface utilisateur, la manipulation de modèle 3D, le détourage de modèle et les fonctionnalités de suivi des yeux. Dans le deuxième tutoriel, vous allez découvrir comment créer une application PC pour la communication à distance holographique qui vous permet de vous connecter à HoloLens 2 à tout moment et de visualiser votre application en 3D.

Pour suivre ce tutoriel, vous devez avoir une connaissance de base d’Unity et de Mixed Reality Toolkit (MRTK). Si ce n’est pas le cas, nous vous recommandons de suivre les tutoriels de prise en main avant de continuer.

Créer et préparer le projet Unity

Dans cette section, vous allez créer un nouveau projet Unity et le préparer au développement MRTK.

Accédez au parcours Principes de base HoloLens 2 et terminez les modules, mais arrêtez lorsque vous atteignez les modules HoloLens 2. Après avoir exécuté ces instructions, vous aurez effectué les opérations suivantes :

  1. Créé le projet Unity et donné à ce dernier un nom approprié, par exemple PC Holographic Remoting (Communication à distance holographique PC).
  2. Changé de plateforme de build.
  3. Importé les ressources TextMeshPro Essential.
  4. Importé le Kit de ressources Mixed Reality Toolkit et configuré le projet Unity.
  5. Créé et défini la scène, et affecté à cette dernière un nom approprié, par exemple PC Holographic Remoting (Communication à distance holographique PC).

Importer les ressources du tutoriel

Téléchargez et importez le MRTK. HoloLens2.Unity.Tutorials.Assets.PCHolographicRemoting.3.0.0.unitypackage .

Conseil

Pour vous rappeler comment importer un package personnalisé Unity, reportez-vous aux instructions fournies dans Importation du Mixed Reality Toolkit.

Une fois que vous avez importé les ressources du didacticiel, votre fenêtre Projet devrait ressembler à ceci :

Screenshot of Project window.

Configurer et préparer la scène

Dans cette section, vous allez préparer la scène en ajoutant une partie des prefabs du tutoriel.

  1. Tout d’abord, étant donné que certains des modèles sont au format glTF que Unity ne prend pas en charge en mode natif, nous devons installer un package qui leur permet d’être importés.

    Pour installer la bibliothèque glTFast open source, téléchargez et exécutez ce fichier : https://package-installer.glitch.me/v1/installer/OpenUPM/com.atteneder.gltfast?registry=https%3A%2F%2Fpackage.openupm.com&scope=com.atteneder

    Screenshot of importing glTFast.

    Cliquez sur Importer.

    Screenshot of new scope registry imported.

    Sélectionnez Fermer.

  2. Dans la fenêtre Projet, accédez au dossier Assets(Ressources)>MRTK.Tutorials.PCHolograhicRemoting>Prefabs. Sélectionnez le prefab SceneContent et faites-le glisser vers le bas de la fenêtre Hierarchy (Hierarchy).

    Screenshot of Adding prefabs 2.

    Pour afficher la scène du point de vue de l’appareil photo, cliquez avec le bouton droit sur l’objet Main Camera (Caméra principale) dans la fenêtre Hierarchy (Hiérarchie), puis sélectionnez Align view to selected (Aligner l’affichage sur la sélection).

    Screenshot of Focus objects on scene.

    Conseil

    Si vous estimez que les grandes icônes de votre scène sont gênantes (par exemple, les grandes icônes « T » encadrées), vous pouvez les masquer en basculant les interrupteurs sur la position Désactivé.

Configurer les boutons pour faire fonctionner la scène

Dans cette section, vous allez ajouter des scripts à la scène et créer des événements de bouton qui illustrent les notions de base des fonctionnalités de changement et de découpage de modèle.

Configurer le composant Bouton enfoncé (script)

  1. Dans la fenêtre Hierarchy (Hiérarchie), développez les objets SceneContent et ButtonParent, puis sélectionnez le bouton Next (Suivant). Dans la fenêtre Inspector (Inspecteur), recherchez le composant Pressable Button (Bouton appuyable), puis sélectionnez l’icône du signe « + » (+) sous l’événement OnClick ().

    Screenshot of expanding the Interactable script.

  2. Avec l’objet NextButton toujours sélectionné dans la fenêtre Hierarchy (Hiérarchie), faites glisser l’objet ButtonParent de la fenêtre Hierarchy vers le champ vide None (Object) (Aucun (Objet)) de l’événement que vous venez d’ajouter afin que l’objet ButtonParent écoute l’événement de clic de ce bouton :

    Screenshot of Adding ButtonParent to the None Object.

  3. Cliquez sur la liste déroulante No Function (Aucune fonction) du même événement, puis sélectionnez ViewButtonControl>NextModel () pour définir la fonction NextModel () comme action déclenchée quand le bouton est enfoncé :

    Screenshot of selecting ViewButtonControl and NextModel.

Configurer les autres boutons

  • Pour chacun des boutons restants, effectuez le processus décrit ci-dessus pour affecter des fonctions aux événements OnClick () :

    • Pour l’objet PreviousButton, affectez la fonction ViewButtonControl>PreviousModel ().
    • Pour ClippingButton, sélectionnez la fonction ToggleButton>ToggleClipping ().

Configurer les composants du contrôle des boutons d’affichage (script) et des boutons bascule (script)

À ce stade, vos boutons sont configurés pour illustrer les fonctionnalités de changement et le découpage de modèle. Maintenant, vous allez ajouter des modèles 3D à la scène et les objets de découpage au script.

Nous avons fourni six modèles 3D différents à des fins de démonstration. Développez l’objet ModelParent pour exposer ces modèles.

  1. L’objet ButtonParent étant toujours sélectionné dans la fenêtre Hierarchy, dans la fenêtre Inspector, recherchez le composant View Button Control (Script) , puis développez la variable Models.

    Dans le champ Size (Taille), entrez le nombre de modèles 3D que vous aimeriez avoir dans votre scène (six dans le cas présent). Cela crée des champs pour l’ajout de nouveaux modèles 3D.

    Screenshot of entering the number of 3D models.

  2. Faites glisser chaque objet enfant de l’objet ModelParent vers ces champs.

    Screenshot of dragging and drop each child object.

  3. Faites glisser l’objet ClippingObjects de la fenêtre Hierarchy (Hiérarchie) vers le champ Clipping Object (Découpage d’objet) du composant Toggle Button (Script) (Bouton bascule (Script)).

    Remarque

    Restez dans l’objet ButtonParent uniquement.

    Screenshot of dragging and drop clipping object.

  4. Dans la fenêtre Hierarchy (Hiérarchie), sélectionnez le prefab ClippingObjects et activez-le dans la fenêtre Inspector (Inspecteur) pour activer les objets de détourage.

Configurer les objets de découpage pour activer la fonctionnalité de découpage

Dans cette section, vous allez ajouter le renderer d’objets enfants de l’objet MarsCuriosityRover dans un objet de découpage individuel pour illustrer le découpage du modèle MarsCuriosityRover.

Dans la fenêtre Hierarchy (Hiérarchie), développez l’objet ClippingObjects pour exposer les trois objets de découpage différents que vous allez utiliser dans ce projet.

  1. Pour configurer l’objet ClippingSphere, sélectionnez-le, puis ajoutez un composant Sphère de détourage dans la fenêtre Inspector (Inspecteur). Entrez ensuite dans le champ Size (Taille) le nombre de renderers que vous devez ajouter pour votre modèle 3D. Dans ce cas, ajoutez 10 pour les objets enfants MarsCuriosityRover. Cela créera des champs pour l’ajout de renderers. Ensuite, faites glisser les objets du modèle enfant de l’objet MarsCuriosityRover vers ces champs.

    Screenshot of configuring Clipping Objects to enable clipping feature.

  2. Vérifiez que les objets de détourage sont activés en activant le prefab ClippingObjects dans la fenêtre Hierarchy (Hiérarchie).