[Unity] Utilisation du contrôleur Tobii EyeX dans Unity
Tobii EyeX est un produit excellent qui vous donne le pouvoir grâce à… vos yeux ! Non je ne plaisante pas, avec cet appareil vous pouvez effectuer des actions simplement en bougeant les yeux et ça fonctionne vraiment bien. L’entreprise qui le fabrique a fait les choses bien pour les développeurs car ils ont même fait un SDK pour Unity, on attend quoi pour l’essayer ?
Comment ça marche ?
Grâce à plusieurs capteurs, le contrôleur est capable de connaitre la position et l’orientation de vos yeux afin de savoir où vous regardez sur l’écran. Il vous suffit simplement de mettre l’appareil au bas de votre écran et d’effectuer une phase de calibrage et c’est parti !
Exemple
Créez un nouveau projet dans Unity (toutes les versions récentes sont supportées).
Téléchargez le SDK
Vous pouvez trouver le SDK à cette adresse : http://developer.tobii.com/downloads/
Installer le package
Décompressez le fichier téléchargez et double-cliquez sur EyeXFramework.unityPackage. Une fenêtre s’ouvrira alors avec la liste des fichiers du SDK à inclure dans le projet : importez les tous.
Rendre une sphère interactive
Dans Unity, sélectionnez GameObject > Create Other > Sphere.
Sur cette sphère, nous allons ajouter 3 composants :
- Gaze Aware (à partir du SDK Tobii)
- Système de particules
- Script personnalisé afin d’afficher des particules sur la sphère quand on la regarde
Gaze Aware
Sélectionnez la sphère puis dans le panneau Inspector, cliquez sur Add Component > Tobii EyeX > Gaze Aware. Ce script permet à la sphère de devenir réactive, ce qui permet de savoir si le regard est porté sur la sphère ou non.
Système de particules
Sélectionnez la sphère puis dans le panneau Inspector, cliquez sur Add Component > Effect > Particule System. Changez la propriété Start Lifetime à 1 et décochez la propriété Emission.
Script personnalisé
Encore une fois, sélectionnez la sphère puis dans le panneau Inspector, cliquez sur Add Component >New script > Csharp > Create and Add. Ouvrez le script et copiez le code suivant :
using UnityEngine; using System.Collections; public class ParticleBehavior : MonoBehaviour { private ParticleSystem _particleComponent; private GazeAwareComponent _gazeAwareComponent; // Use this for initialization void Start () { _particleComponent = GetComponent<ParticleSystem>(); _gazeAwareComponent = GetComponent<GazeAwareComponent>(); } // Update is called once per frame void Update () { if (_gazeAwareComponent.HasGaze) { _particleComponent.enableEmission = true; } else { _particleComponent.enableEmission = false; } } }
On utilise la propriété HasGaze() du composant GazeAwareComponent pour déterminer si l’on regarde la sphère ou non. La propriété enableEmission permet quant à elle d’activer la génération de particules.
Et voilà, vous pouvez désormais contrôler votre jeu Unity avec vos yeux
Commentaires