8. Utilisation du suivi oculaire8. Using eye-tracking

Dans ce tutoriel, vous allez voir comment activer le suivi oculaire (eye-tracking) pour HoloLens 2 et comment l’ajouter aux objets en vue de déclencher des actions lorsque l’utilisateur regarde ces objets.In this tutorial, you will learn how to enable eye-tracking for HoloLens 2 and add eye-tracking to objects to trigger actions when the user looks at the objects.

Notes

Si vous déployez également ce projet sur HoloLens (1re génération), notez que le suivi oculaire est pris en charge uniquement sur HoloLens 2.If you are also deploying this project to HoloLens (1st generation), note that eye-tracking is only supported on HoloLens 2.

ObjectifsObjectives

  • Apprendre à activer le suivi oculaire pour HoleLens 2Learn how to enable eye-tracking for HoleLens 2
  • Apprendre à utiliser le suivi oculaire pour déclencher une actionLearn how to use eye-tracking to trigger action

Vérifier que la fonctionnalité d’entrée avec le pointage du regard est activéeEnsuring the Eye Gaze Input capability is enabled

Dans le menu Unity, sélectionnez Mixed Reality Toolkit > Utilities > Configure Unity Project pour ouvrir la fenêtre MRTK Project Configurator puis, dans la section UWP Capabilities, vérifiez que l’option Enable Eye Gaze Input Capability est grisée :In the Unity menu, select Mixed Reality Toolkit > Utilities > Configure Unity Project to open the MRTK Project Configurator window, then in the UWP Capabilities section, verify that Enable Eye Gaze Input Capability is greyed out:

Fenêtre MRTK Project Configurator d’Unity

Notes

La fonctionnalité Gaze Input doit avoir été activée lors des instructions Appliquer les paramètres de MRTK Project Configurator lorsque vous avez configuré le projet Unity au début de cette série de tutoriels.The Gaze Input capability should have been enabled during the Apply the MRTK Project Configurator settings instructions when you configured the Unity project at the beginning of this tutorial series. Toutefois, si elle n’est pas activée, activez-la maintenant.However, if it is not enabled, make sure you enable it now.

Activation du pointage du regard dans le fournisseur de regardEnabling eye based gaze in the gaze provider

Dans la fenêtre Hierarchy, sélectionnez l’objet MixedRealityToolkit. Ensuite, dans la fenêtre Inspector, sélectionnez l’onglet MixedRealityToolkit > Input, puis effectuez les étapes suivantes :In the Hierarchy window, select the MixedRealityToolkit object, then in the Inspector window, select the MixedRealityToolkit > Input tab and take the following steps:

  • Clonez DefaultHoloLens2InputSystemProfile, puis attribuez-lui un nom adapté, comme GettingStarted_HoloLens2InputSystemProfile.Clone the DefaultHoloLens2InputSystemProfile and give it a suitable name, for example, GettingStarted_HoloLens2InputSystemProfile
  • Développez la section Pointers.Expand the Pointers section
  • Clonez DefaultMixedRealityPointerProfile, puis attribuez-lui un nom adapté, comme GettingStarted_MixedRealityPointerProfile.Clone the DefaultMixedRealityPointerProfile and give it a suitable name, for example, GettingStarted_MixedRealityPointerProfile
  • Recherchez la section Gaze Settings (Paramètres du regard), puis cochez la case Is Eye Tracking Enabled (Activation du suivi oculaire).Locate the Gaze Settings section and check the Is Eye Tracking Enabled checkbox

Composant MixedRealityToolkit d’Unity avec les profils nouvellement créés appliqués et le suivi du regard activé

Conseil

Pour obtenir un rappel de la façon de cloner des profils MRTK, vous pouvez consulter les instructions fournies dans Configuration des profils MRTK.For a reminder on how to clone MRTK profiles, you can refer to the Configuring the MRTK profiles instructions.

Activation du suivi oculaire simulé pour l’éditeur UnityEnabling simulated eye-tracking for the Unity editor

Dans la fenêtre Hierarchy, sélectionnez l’objet MixedRealityToolkit. Ensuite, dans la fenêtre Inspector, accédez à l’onglet Input, puis :In the Hierarchy window, select the MixedRealityToolkit object, then in the Inspector window, navigate to the Input tab, then:

  • Développez la section Input Data Providers > Input Simulation Service.Expand the Input Data Providers > Input Simulation Service section
  • Clonez DefaultMixedRealityInputSimulationProfile, puis attribuez-lui un nom adapté, comme GettingStarted_MixedRealityInputSimulationProfile.Clone the DefaultMixedRealityInputSimulationProfile and give it a suitable name, for example, GettingStarted_MixedRealityInputSimulationProfile
  • Localisez la section Eye Simulation, puis cochez la case Simulate Eye Position.Locate the Eye Simulation section and check the Simulate Eye Position checkbox

Composant MixedRealityToolkit d’Unity avec le profil nouvellement créé appliqué et la simulation du regard activée

Ajout du suivi oculaire aux objetsAdding eye-tracking to objects

Dans la fenêtre Hierarchy, développez l’objet RoverExplorer > Buttons, puis, pour chacun des trois objets enfants Buttons, développez et sélectionnez l’objet SeeItSayItLabel > TextMeshPro :In the Hierarchy window, expand the RoverExplorer > Buttons object, then for each of the three child button objects, expand and select the SeeItSayItLabel > TextMeshPro object:

Unity avec l’objet TextMeshPro sélectionné

Avec les trois objets TextMeshPro toujours sélectionnés, dans la fenêtre Inspector, utilisez le bouton Add Component pour ajouter les composants suivants à tous les objets sélectionnés :With the three TextMeshPro objects still selected, in the Inspector window, use the Add Component button to add the following components to all the selected objects:

  • Composant Box ColliderBox Collider component
  • Composant EyeTrackingTargetEyeTrackingTarget component

Unity avec l’objet TextMeshPro sélectionné et des composants ajoutés

Dans la fenêtre Hierarchy, sélectionnez l’objet Hints > SeeItSayItLabel > TextMeshPro, puis configurez le composant EyeTrackingTarget de la façon suivante :In the Hierarchy window, select the Hints > SeeItSayItLabel > TextMeshPro object, then configure the EyeTrackingTarget component as follows:

  • Dans la section d’événement On Look At Start ()In the On Look At Start () event section
    • Cliquez sur la petite icône + pour ajouter un autre événement.Click the small + icon to add another event
    • Affectez l’objet TextMeshPro au champ None (Object) .Assign the object itself, i.e. the same TextMeshPro object, to the None (Object) field
    • Dans la liste déroulante No Function, sélectionnez TextMeshPro > float fontSize pour mettre à jour cette valeur de propriété lorsque l’événement est déclenché.From the No Function dropdown, select TextMeshPro > float fontSize to update this property value when the event is triggered
    • Définissez l’argument sur 0.06 pour augmenter la taille de police actuelle (0.04) de 50 %.Set the argument to 0.06 to increase the current font size of 0.04 by 50%
  • Dans la section d’événement On Look Away ()In the On Look Away () event section
    • Cliquez sur la petite icône + pour ajouter un autre événement.Click the small + icon to add another event
    • Affectez l’objet TextMeshPro au champ None (Object) .Assign the object itself, i.e. the same TextMeshPro object, to the None (Object) field
    • Dans la liste déroulante No Function, sélectionnez TextMeshPro > float fontSize pour mettre à jour cette valeur de propriété lorsque l’événement est déclenché.From the No Function dropdown, select TextMeshPro > float fontSize to update this property value when the event is triggered
    • Définissez l’argument sur 0.04 pour rétablir la taille de la police à 0.04.Set the argument to 0.04 to reset the font size back to 0.04

Unity avec l’objet Hints TextMeshPro sélectionné et le composant EyeTrackingTarget configuré

Répétez cette étape pour l’objet Explode > SeeItSayItLabel > TextMeshPro et pour l’objet Reset > SeeItSayItLabel > TextMeshPro.Repeat this step for the Explode > SeeItSayItLabel > TextMeshPro object and the Reset > SeeItSayItLabel > TextMeshPro object.

Si vous passez maintenant en mode jeu, puis maintenez enfoncé le bouton droit de la souris tout en déplaçant la souris jusqu’à ce que le regard atteigne l’une des étiquettes, vous verrez que la taille de police augmente de 50 % et retourne à sa taille d’origine lorsque l’utilisateur regarde ailleurs :If you now enter Game mode and then press-and-hold the right mouse button while moving your mouse until the gaze hit's one of the labels, you will see the font size increase by 50% and reset back to its original size when looking away:

Vue partagée du mode Play d’Unity avec le suivi atteignant Eye Tracking Target - Étiquette du bouton Explode

FélicitationsCongratulations

Dans ce tutoriel, vous avez vu comment activer le suivi oculaire pour HoloLens 2 et comment l’ajouter aux objets en vue de déclencher des actions lorsque l’utilisateur regarde ces objets.In this tutorial, you learned how to enable eye-tracking for HoloLens 2 and how to add eye-tracking to objects to trigger actions when the user looks at the objects.