Coach de main
Le coach manuel déclenche des mains modélisées en 3D lorsque le système ne détecte pas les mains de l’utilisateur. Cette fonctionnalité est un composant « d’enseignement » qui permet de guider l’utilisateur lorsque le mouvement n’a pas été enseigné. Si les utilisateurs n’ont pas effectué le mouvement spécifié pendant un certain temps, les mains effectuent une boucle avec un délai. L’entraîneur de main peut être utilisé pour représenter l’appui sur un bouton ou la récupération d’un hologramme.
Coach de main fourni
Le modèle d’interaction actuel représente un large éventail de contrôles de mouvement tels que le défilement, la sélection de loin et l’appui proche. Voici une liste complète des mouvements de la main existants fournis dans MRTK :
Exemple de sélection proche - Utilisé pour montrer comment sélectionner des boutons ou fermer des objets interagissants
Exemple d’air tap : utilisé pour montrer comment sélectionner des objets éloignés
Exemple de déplacement d’un objet dans un espace - Utilisé pour montrer comment déplacer un hologramme dans l’espace
Exemple de Rotate-Used pour montrer comment faire pivoter des hologrammes ou des objets
Exemple d’échelle - Utilisé pour montrer comment manipuler les hologrammes pour qu’ils soient plus grands ou plus petits
Exemple de Palm up – Utilisation suggérée, pour afficher les menus à main
Exemple de hand flip : une autre façon d’afficher les menus des mains
Exemple de défilement : utilisé pour faire défiler une liste ou un document long
Concepts de conception
Pour Hololens2, nous avons conçu des interactions de main basées sur des mouvements instinctifs et naturels de la main. Nous pensons qu’ils sont intuitifs pour la plupart des utilisateurs, donc nous n’avons pas créé de moments d’apprentissage de mouvement dédiés. Au lieu de cela, nous avons créé l’entraîneur de main pour aider les utilisateurs à découvrir ces mouvements s’ils sont bloqués ou ne sont pas familiarisés avec les interactions hologrammes. Sans un moment d’apprentissage, nous avons estimé que montrer aux utilisateurs comment effectuer une action en la démontrant serait la meilleure option. Nous avons constaté que les utilisateurs étaient en mesure de comprendre le geste, mais avaient besoin d’un peu d’aide. Si nous détectons qu’un utilisateur n’interagit pas avec un objet pendant un certain temps, un coach manuel est déclenché pour montrer le positionnement correct de la main et du doigt.
Intuitif
Lors de l’animation des mains, cela doit être évident et ne doit pas causer de confusion. L’animation de la main est une représentation du mouvement que vous essayez d’inviter l’utilisateur à comprendre.
Par exemple, si vous souhaitez qu’un utilisateur appuie sur un bouton, une main appuyant sur un bouton est déclenchée.
Hand Coach montrant près de tapoter une gemme
Échelle manuelle
Nous avons testé différentes tailles de main avec les menus de l’interface utilisateur et nous avons estimé que si les mains étaient fidèles à la taille, cela donnait un sentiment menaçant. S’ils étaient trop petits, il était difficile de voir et de comprendre le geste.
Voix-dessus et mains
Ne vous attendez pas à ce que les utilisateurs puissent écouter un ensemble d’instructions par le biais de la voix et watch des instructions différentes via l’assistant manuel. Séquencez vos instructions pour aider les utilisateurs à se concentrer par rapport à concurrencer leur attention afin de réduire la surcharge sensorielle.
Puis-je créer le mien ?
Oui. Nous vous encourageons à créer votre propre geste unique pour votre jeu et à contribuer à la communauté ! Nous avons fourni un fichier Maya d’une main truquée qui peut être utilisé pour votre application, qui peut être téléchargé ici : Télécharger HandCoach_MRTK.zip
Exemple de hand poking animé d’une boîte dans Maya
Outil de création recommandé
Parmi les artistes 3D, beaucoup choisissent d’utiliser Maya d’Autodesk, qui peut utiliser HoloLens pour transformer la façon dont les ressources sont créées. Le fichier de mains fourni étant un fichier binaire Maya, il est recommandé d’utiliser Maya pour animer et exporter les mains. Si vous préférez utiliser un autre programme 3D, voici un . FBX : téléchargez HandCoachMRTK_FBX.zip pour créer votre propre configuration de contrôleur.
Si vous utilisez le fichier maya hand téléchargeable fourni, il est suggéré d’effectuer un scale-down des mains dans Unity à 0,6.
Mains truquées
Spécifications techniques
- Le fichier à deux mains est disponible au format Ascii Maya
- La main droite et la main gauche sont disponibles au format binaire Maya
- Définissez votre fichier Maya sur 24 FPS
- Dans le fichier, il y a une main gauche et une main droite, qui peuvent être utilisées pour les mouvements à deux mains ou à une seule main. La main droite n’est visible que par défaut.
- Il est suggéré de laisser une mémoire tampon d’environ 10 images au début et à la fin pour les fondus
- Si vous animez un objet avec une cible spécifiée, il est recommandé d’animer dans une zone Par défaut ou Null.
- Si la main anime un objet physique tel qu’une boîte, il est recommandé de ne pas animer la traduction dans Maya, mais d’attendre de l’animer dans Unity ou dans Code.
- L’animation visible doit être de 1,5 seconde pour que toute information significative soit transmise
- Lorsque vous vous sentez satisfait de votre animation :
- Sélectionner tous les joints et cuire les images clés
- Supprimer les contrôleurs, sélectionner les joints et le maillage et exporter en tant que FBX
- S’il existe plusieurs animations, vous pouvez utiliser l’exportateur de jeux intégré de Maya : https://knowledge.autodesk.com/support/maya/learn-explore/caas/CloudHelp/cloudhelp/2015/ENU/Maya/files/Game-Exporter-htm.html
Exportation à partir de Maya
Une fois que vous êtes satisfait de votre animation
Sélectionner toutes les jointures : Sélectionner une > hiérarchie
Bake out your animation: Switch to Animation > Key > Bake Animation
Supprimer l’MainR_Grp ou MainL_Grp de l’MainR_Grp du > contrôleur
Exporter en tant que FBX : Sélectionnez JNT + Mesh : Sélection d’exportation de fichier > (zone d’option) > Exporter la sélection
Lors de l’exportation en tant que FBX et apporté dans Unity, effectuez un scale-down des mains jusqu’à 0,6. Nous avons constaté que c’était un équilibre parfait pour afficher les mains.
Paramètres Unity pour HandCoach_R préfabriqué trouvé dans MRTK
Implémentation des mains dans votre projet Unity
Meilleures pratiques
Il est suggéré d’effectuer un scale-down des mains dans Unity à 0,6
Les mains doivent être lues deux fois et, si elles ne sont pas terminées, elles sont en boucle continue jusqu’à ce que le mouvement soit terminé. Les mains doivent être bouctées deux fois pour s’assurer que l’utilisateur a eu le temps de s’inscrire et de voir le mouvement. Les mains doivent s’estomper entre les boucles.
Si les mains de l’utilisateur sont visibles par les caméras HL2, mais que les utilisateurs n’effectuent pas l’interaction dont ils ont besoin, les mains apparaissent après 10 secondes.
Si les mains de l’utilisateur ne sont PAS visibles par les caméras HL2, les mains apparaissent après 5 secondes.
Si les mains de l’utilisateur sont visiblement suivies par les caméras HL2 au milieu de l’animation, l’animation se termine et disparaît.
Si vous incluez la voix sur, nous vous suggérons qu’elle corresponde au mouvement de la main.
Si vous avez appris aux mains au moins une fois, répétez le mouvement uniquement s’il est détecté que l’utilisateur est bloqué.
Si des positions spécifiques du doigt/de la main sont critiques, assurez-vous que les utilisateurs peuvent clairement voir ces nuances dans l’animation. Essayez de pendouiller les mains afin que les parties les plus importantes soient clairement visibles.
Si vous remarquez une distorsion sur les mains, vous devez accéder aux paramètres qualité d’Unity pour augmenter le nombre d’os. Accédez à Modifier les > paramètres > du projet d’Unity Qualité > Autres > poids de fusion. Assurez-vous que « 4 os » sont sélectionnés pour afficher les articulations lisses.
Ce qu’il faut éviter
- Mise à l’échelle des mains trop volumineuses
- Placer les mains trop près de l’utilisateur
- Les mains ne doivent être enseignées qu’une seule fois. Sur l’enseignement peut causer confusion et messiité
- Pour l’intégrer à Unity, téléchargez la dernière version de MRTK ici : https://github.com/microsoft/MixedRealityToolkit-Unity
- Matériel : Teaching_Hand2
- Scripts : reportez-vous aux instructions MRTK pour l’entraîneur de main MRTK
- Paramètre par projet
- Jeu de scènes sur UWP : Les instructions se trouvent dans l’article Configurer un nouveau projet OpenXR avec MRTK .