Partager via


É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