États de l’agent
[Microsoft Agent est déconseillé à partir de Windows 7 et peut ne pas être disponible dans les versions ultérieures de Windows.]
Les services d’animation de Microsoft Agent luent automatiquement certaines animations pour vous. Par exemple, lorsque vous utilisez des commandes MoveTo ou GestureAt , les services d’animation l’affichent une animation appropriée. De même, après le délai d’inactivité, les services jouent automatiquement les animations. Pour prendre en charge ces états, vous pouvez définir les animations appropriées, puis les affecter aux états. Vous pouvez toujours lire n’importe quelle animation que vous définissez directement à l’aide de la méthode Play , même si vous l’affectez à un état.
Vous pouvez affecter plusieurs animations au même état, et les services d’animation choisiront de manière aléatoire l’une de vos animations. Cela permet à votre personnage d’afficher une variété beaucoup plus naturelle dans son comportement.
Bien que les animations que vous affectez aux états puissent inclure des images de branchement, évitez les animations en boucle (animations qui branchent pour toujours). Sinon, vous devrez utiliser la méthode Stop avant de pouvoir lire une autre animation.
Il est important de définir et d’affecter au moins une animation pour chaque état qui se produit pour le caractère. Si vous ne fournissez pas ces animations et affectations d’état, votre caractère peut sembler ne pas se comporter correctement pour l’utilisateur. Toutefois, si un état ne se produit pas pour un caractère particulier, vous n’avez pas besoin d’affecter une animation à cet état. Par exemple, si votre application hôte n’appelle jamais la méthode MoveTo , vous pouvez ignorer la création et l’affectation d’animations d’état de déplacement .
State | Exemple d’utilisation |
---|---|
GesturingDown | Lorsque la méthode d’animation GestureAt est traitée. |
GesturingLeft | Lorsque la méthode d’animation GestureAt est traitée. |
GesturingRight | Lorsque la méthode d’animation GestureAt est traitée. |
GesturingUp | Lorsque la méthode d’animation GestureAt est traitée. |
Ouïe | Lorsque le début de l’entrée orale est détecté. |
Cache | Lorsque l’utilisateur ou l’application masque le caractère. |
IdlingLevel1 | Lorsque le caractère commence l’état d’inactif . |
IdlingLevel2 | Lorsque le caractère commence, le deuxième état de niveau d’inactif . |
IdlingLevel3 | Lorsque le caractère commence l’état final du niveau d’idling . |
Écoute | Lorsque le caractère commence à écouter (l’utilisateur appuie d’abord sur la touche d’entrée vocale). |
Déplacement vers le retrait | Lorsque la méthode d’animation MoveTo est traitée. |
MovingLeft | Lorsque la méthode d’animation MoveTo est traitée. |
MovingRight | Lorsque la méthode d’animation MoveTo est traitée. |
Déplacement vers l’avant | Lorsque la méthode d’animation MoveTo est traitée. |
Affichage | Lorsque l’utilisateur ou l’application affiche le caractère. |
Parlant | Lorsque la méthode d’animation Speak est traitée. |
États d’audition et d’écoute
L’animation que vous affectez à l’état d’écoute est lue lorsque l’utilisateur appuie sur la touche d’accès rapide push-to-talk pour l’entrée vocale. Créez et affectez une courte animation qui rend le personnage attentif. De même, définissez son animation de retour pour qu’elle ait une courte durée afin que le personnage joue son animation d’état d’audition lorsque l’utilisateur parle. Une animation d’état d’audition doit également être brève et conçue pour permettre à l’utilisateur de savoir que le personnage écoute activement ce qu’il dit. Des inclinaisons de la tête ou d’autres mouvements légers sont appropriés. Pour fournir une variabilité naturelle, fournissez plusieurs animations de l’état de l’audition .
Les États gesturing
Vous devez créer et affecter des animations d’état Gesturing uniquement si vous envisagez d’utiliser la méthode GestureAt . Les animations d’état de gesturing sont lues lorsque Microsoft Agent traite un appel à la méthode GestureAt. Si vous définissez des superpositions de bouche pour vos animations d’état gesturing , le personnage peut parler au fur et à mesure de ses mouvements.
Les services d’animation déterminent l’emplacement du personnage et sa relation avec l’emplacement des coordonnées spécifiées dans la méthode et jouent une animation appropriée. La direction de la gestation est toujours par rapport au personnage ; Par exemple, GestureRight doit être un mouvement vers la droite du caractère.
États d’affichage et de masquage
Les états Affichage et Masquage affichent les animations affectées lorsque l’utilisateur ou l’application hôte demande à afficher ou masquer le caractère. Ces états définissent également de manière appropriée l’état Visible du cadre de caractères. Lorsque vous définissez des animations pour ces états, gardez à l’esprit qu’un caractère peut apparaître ou partir à n’importe quel emplacement d’écran. Étant donné que l’utilisateur peut afficher ou masquer n’importe quel caractère, prenez toujours en charge au moins une animation pour ces états.
Les animations que vous affectez à l’état Affichage se terminent généralement par un cadre contenant l’image de position neutre du caractère. À l’inverse, les animations d’état de masquage commencent généralement par la position neutre. Les animations d’état d’affichage et de masquage peuvent inclure une image vide au début ou à la fin, respectivement, pour fournir une transition à partir de l’état actuel du caractère.
Les états de la nage
Les états de idling sont progressifs. Les services d’animation commencent à utiliser les affectations de niveau 1 pour la première période d’inactivité, et les animations de niveau 2 pour la seconde. Après cela, le cycle d’inactivité progresse jusqu’aux animations affectées au niveau 3 et reste dans cet état jusqu’à ce qu’il soit annulé, par exemple lorsqu’une nouvelle demande d’animation commence.
Concevez des animations pour les états d’idling afin de communiquer l’état du caractère, mais pas pour distraire l’utilisateur. Les animations doivent refléter de manière appropriée la réactivité du personnage de manière subtile mais claire. Par exemple, le fait de faire un clin d’œil ou de clignoter sont de bonnes animations à affecter à l’état IdlingLevel1 . Les animations de lecture fonctionnent bien pour l’état IdlingLevel2 . Dormir ou écouter de la musique avec un casque sont de bons exemples d’animations à affecter à l’état IdlingLevel3 . Les animations qui incluent des mouvements nombreux ou importants ne sont pas bien adaptées aux animations inactives, car elles attirent l’attention de l’utilisateur. Étant donné que les animations d’état de idling sont lues fréquemment, fournissez plusieurs animations d’état de idling , en particulier pour les états IdlingLevel1 et IdlingLevel2 .
Notez qu’une application peut désactiver le traitement inactif automatique d’un caractère et gérer l’état d’inactivité du caractère lui-même. Les états d’idling de l’agent sont conçus pour vous aider à éviter toute situation où le personnage n’a aucune animation à jouer. Une image de caractère qui ne change pas après un bref laps de temps est semblable à une application affichant un pointeur d’attente pendant une longue période, ce qui nuit au sentiment de crédibilité et d’interactivité. Le maintien de l’illusion ne prend pas beaucoup : parfois, il suffit d’un clignement animé, d’une respiration visible ou d’un déplacement du corps.
État de l’expression orale
Les services d’animation utilisent l’état Parler lorsqu’une animation orale est introuvable pour l’animation actuelle. Affectez une animation orale simple à cet état. Par exemple, vous pouvez utiliser un cadre unique composé de la position neutre du caractère avec des superpositions de bouche.
Les états en mouvement
Les états de déplacement sont lues lorsqu’une application appelle la méthode MoveTo . Les services d’animation déterminent l’animation à lire en fonction de l’emplacement actuel du personnage et des coordonnées spécifiées. La direction du mouvement est basée sur la position du caractère. Par conséquent, l’animation que vous affectez à l’animation MovingLeft doit être basée sur la gauche du caractère. Si vous n’utilisez pas la méthode MoveTo , vous pouvez ignorer la création et l’affectation d’une animation.
Les animations d’état de déplacement doivent animer le caractère dans sa position mobile. La dernière image de cette animation s’affiche lorsque le cadre du caractère est déplacé à l’écran. Il n’existe aucune prise en charge de l’animation du caractère pendant que son cadre se déplace.
Jeu d’animations standard
Bien que vous puissiez concevoir un caractère personnalisé pour avoir les animations que vous souhaitez utiliser, Microsoft Agent définit un jeu d’animations standard. Les caractères conformes à cette définition peuvent être sélectionnés comme caractère par défaut.
Le tableau suivant répertorie les animations incluses dans le jeu d’animations standard. Même si vous créez un caractère personnalisé, vous pouvez utiliser la liste comme guide pour concevoir vos propres caractères. Les caractères qui prennent en charge le jeu d’animations standard doivent prendre en charge au moins les animations suivantes.
Animation | Exemple d’utilisation | Exemple d’animation |
---|---|---|
Reconnaître | Lorsque le caractère accuse réception de la demande de l’utilisateur. | Le caractère signe un signe de signe de signe ou clignote le mouvement de la main « OK ». Notez que cette animation doit retourner le caractère à sa position neutre. |
Alerte1,2 | Lorsque le personnage attend des instructions, généralement lu après que l’utilisateur a activé le mode d’écoute. | Les visages de caractère face, respirant, clignotant occasionnellement, mais clairement en attente d’instructions. |
Annonce1,2 | Lorsque le caractère a trouvé des informations pour l’utilisateur. | Mouvements de caractère en levant les sourcils et la main ou ouvre une enveloppe. |
Blink | Lorsque le caractère a fini de parler ou inactif. | Le caractère clignote naturellement les yeux. |
Confus1,2 | Lorsque le personnage ne comprend pas quoi faire. | Le caractère gratte la tête. |
Féliciter1,2 | Lorsque le caractère ou l’utilisateur termine une tâche (forme plus forte de l’animation Accuser ).) | Character effectue un geste de félicitations, transmet « Oui ! » |
Déclin1,2 | Lorsque le caractère ne peut pas faire ou refuse la demande de l’utilisateur. | Le caractère agite la tête, transmet « no can do. » |
DoMagic1 | Le caractère se prépare à afficher quelque chose. | Des ondes de caractères mains ou une baguette. |
DoMagic2 | Caractère termine l’affichage de quelque chose. | Caractère termine le mouvement magique. |
DontRecognize1,2 | Lorsque le caractère n’a pas reconnu la demande de l’utilisateur. | Le caractère tient la main à l’oreille. |
Expliquer1,2 | Quand le caractère explique quelque chose à l’utilisateur. | Mouvements de caractères comme s’il expliquait quelque chose. |
GestureDown1,2 | Quand le caractère doit pointer vers quelque chose en dessous. | Le caractère pointe vers le bas. |
GestureLeft1,2 | Quand le caractère doit pointer vers quelque chose à sa gauche. | Les points de caractères avec la main gauche ou les morphoses en flèche pointant vers la gauche. |
GestureRight1,2 | Quand le caractère doit pointer vers quelque chose à sa droite. | Les caractères pointent avec la main droite ou se transforment en flèche pointant vers la droite. |
GestureUp1,2 | Quand le caractère doit pointer vers quelque chose au-dessus de lui. | Le caractère pointe vers le haut. |
GetAttention | Lorsque le caractère doit avertir l’utilisateur de quelque chose d’important. | Le caractère agite les mains ou saute de haut en bas. |
GetAttentionContinued | Pour souligner l’importance de la notification. | Continuation ou répétition du mouvement initial. |
GetAttentionReturn | Lorsque le caractère termine l’animation GetAttention ou GetAttentionContinued . | Le caractère revient à sa position neutre. |
Saluer1,2 | Lorsque l’utilisateur démarre le système. | Des sourires et des vagues. |
Audience1 | Lorsque le caractère entend le début d’un énoncé parlé (écoute active). | Le caractère se penche vers l’avant et hoche la tête, ou tourne la tête montrant la réponse à l’entrée vocale. Remarque : cette animation effectue une boucle vers une image intermédiaire qui se produit après que le caractère se déplace vers une position appropriée. |
Audience2 | Lorsque le caractère entend le début d’un énoncé parlé (écoute active). | Autre variante du type d’animation utilisé dans Hearing1Remarque : cette animation effectue une boucle vers une image intermédiaire qui se produit après le déplacement du caractère vers une position appropriée. |
Masquer | Lorsque l’utilisateur ignore le caractère. | Caractère supprime l’auto de l’écran. |
Idle1_1 | Lorsque le caractère n’a aucune tâche et que l’utilisateur n’interagit pas avec le caractère. | Le caractère clignote ou regarde autour de lui, restant ou retournant à la position neutre. |
Idle1_2 | Lorsque le caractère n’a aucune tâche et que l’utilisateur n’interagit pas avec le caractère. | Autre variante du type d’animation utilisé dans Idle1_1. |
Idle2_1 | Lorsque le caractère est inactif depuis un certain temps. | Caractère bâille ou lit le magazine restant dans ou retournant à la position neutre. |
Idle2_2 | Lorsque le caractère est inactif depuis un certain temps. | Autre variante du type d’animation utilisé dans Idle2_1. |
Idle3_1 | Lorsque le caractère est inactif depuis longtemps. | Des bâillements de caractère. |
Idle3_2 | Lorsque le caractère est inactif depuis longtemps. | Le personnage dort ou se met sur un casque pour écouter de la musique. Remarque : cette animation effectue une boucle vers une image intermédiaire qui se produit après que le caractère se déplace vers une position appropriée. |
LookDown | Quand le personnage doit regarder vers le bas. | Caractère regarde vers le bas. |
LookLeft | Quand le caractère doit regarder à gauche. | Le caractère regarde vers la gauche. |
LookRight | Quand le personnage doit avoir l’air droit. | Le caractère regarde vers la droite. |
Recherche | Quand le caractère doit rechercher. | Le caractère recherche. |
MoveDown | Lorsque le caractère se prépare à descendre. | Transitions de caractère vers une position de marche/de vol vers le bas. |
MoveLeft | Lorsque le caractère se prépare à se déplacer vers la gauche. | Transitions de caractère vers une position de marche/vol à gauche. |
MoveRight | Lorsque le caractère se prépare à se déplacer vers la droite. | Transitions de caractère vers une position droite de marche/vol. |
MoveUp | Lorsque le personnage se prépare à monter. | Transitions de caractère vers une position de marche/de vol vers le haut. |
Satisfait1,2 | Lorsque le caractère est satisfait de la demande ou du choix de l’utilisateur. | Des sourires de caractère. |
Processus | Lorsque le caractère effectue un type de tâche générique. | Le caractère appuie sur des boutons ou utilise un type d’outil. |
Traitement | Lorsque le caractère est occupé à travailler sur une tâche générique. | Les caractères gribouillent sur une feuille de papier ou utilisent un type d’outil. Remarque : cette animation effectue une boucle vers une image intermédiaire qui se produit après que le caractère se déplace vers une position appropriée. |
Lire | Lorsque le caractère lit quelque chose à l’utilisateur. | Caractère affiche le livre ou le papier, lit et regarde l’utilisateur. |
ReadContinued | Lorsque le caractère lit plus loin à l’utilisateur. | Le caractère lit à nouveau, puis retourne à l’utilisateur. |
ReadReturn | Lorsque le caractère termine l’animation Read ou ReadContinued . | Le caractère revient à sa position neutre. |
Lecture | Lorsque le caractère lit quelque chose, mais ne peut pas accepter d’entrée. | Le caractère lit à partir d’un morceau de papier. Remarque : cette animation effectue une boucle vers une ou plusieurs images intermédiaires qui se produisent après le déplacement du caractère à une position appropriée. |
RestPose | Quand le caractère parle de sa position neutre. | Caractère se tient avec une posture détendue mais attentive. |
Triste1,2 | Lorsque le personnage est déçu du choix de l’utilisateur. | Le personnage fronce les sourcils ou a l’air déçu. |
action | Quand le caractère recherche quelque chose. | Les caractères parcourent le tiroir de fichiers ou un autre conteneur à la recherche de quelque chose. |
Recherche | Lorsque caractère recherche des informations spécifiées par l’utilisateur. | Les caractères parcourent le tiroir de fichiers ou un autre conteneur à la recherche de quelque chose. Remarque : cette animation effectue une boucle vers une ou plusieurs images intermédiaires qui se produisent après le déplacement du caractère à une position appropriée. |
Afficher | Lorsque le caractère démarre ou revient après avoir été appelé. | Le personnage apparaît dans une bouffée de fumée, rayonne ou marche à l’écran. |
StartListening1,2 | Lorsque le caractère est à l’écoute. | Le caractère met la main à l’oreille. |
StopListening1,2 | Lorsque le caractère cesse d’écouter. | Caractère met les mains sur les oreilles. |
Suggérer1,2 | Lorsque le caractère a un pourboire ou une suggestion pour l’utilisateur. | L’ampoule apparaît en regard du caractère. |
Surpris1,2 | Lorsque le caractère est surpris par l’action ou le choix de l’utilisateur. | Le caractère élargit les yeux, ouvre la bouche. |
Pensez1,2 | Quand le personnage pense à quelque chose. | Le personnage recherche et tient la main sur la tête. |
Incertain1,2 | Lorsque le caractère a besoin de l’utilisateur pour confirmer une demande. | Le caractère a l’air quizzical, véhicule (« Êtes-vous sûr ? ») |
Vague1,2 | Lorsque l’utilisateur choisit d’arrêter le serveur ou le système. | Les ondes de caractère bonjour ou bonjour. |
Écrire | Lorsque le caractère est à l’écoute des instructions de l’utilisateur. | Caractère affiche du papier, écrit et regarde l’utilisateur. |
WriteContinued | Lorsque le caractère continue d’écouter les instructions de l’utilisateur. | Caractère écrit sur un morceau de papier et regarde l’utilisateur. |
WriteReturn | Lorsque le caractère termine l’animation Write ou WriteContinued . | Le caractère revient à sa position neutre. |
Écrit | Lorsque le caractère écrit des informations pour l’utilisateur. | Caractères écrits sur un morceau de papier. Remarque : cette animation est en boucle. |
L’animation nécessite des superpositions de bouche et un cadre de parole défini.
L’animation nécessite une animation de retour affectée en fonction de sa branche de sortie ou d’une animation de retour explicite.
En outre, un caractère doit avoir les affectations d’état suivantes.
State | Animations requises |
---|---|
GesturingDown | GestureDown |
GesturingLeft | GestureLeft |
GesturingRight | GestureRight |
GesturingUp | GestureUp |
Ouïe | Audience1, Audience2 |
Cache | Masquer |
IdlingLevel1 | Blink, Idle1_1, Idle1_2 |
IdlingLevel2 | Blink, Idle1_1, Idle1_2, Idle2_1, Idle2_2 |
IdlingLevel3 | Idle3_1, Idle3_2 |
Écoute | Alerte |
Déplacement vers le retrait | MoveDown |
MovingLeft | MoveLeft |
MovingRight | MoveRight |
Déplacement vers l’avant | MoveUp |
Affichage | Afficher |
Parlant | RestPose |