Estados del agente

[Microsoft Agent está en desuso a partir de Windows 7 y puede no estar disponible en versiones posteriores de Windows.

Los servicios de animación de Microsoft Agent reproducen automáticamente ciertas animaciones automáticamente. Por ejemplo, cuando usas comandos MoveTo o GestureAt , los servicios de animación reproducen una animación adecuada. Del mismo modo, después del tiempo de espera de inactividad, los servicios reproducen automáticamente animaciones. Para admitir estos estados, puede definir las animaciones adecuadas y, a continuación, asignarlas a los estados. Todavía puedes reproducir cualquier animación que definas directamente mediante el método Play , incluso si la asignas a un estado.

Puedes asignar varias animaciones al mismo estado y los servicios de animación elegirán aleatoriamente una de tus animaciones. Esto permite que tu personaje muestre una variedad mucho más natural en su comportamiento.

Aunque las animaciones que asignas a estados pueden incluir fotogramas de bifurcación, evita animaciones de bucle (animaciones que ramifican para siempre). De lo contrario, tendrás que usar el método Stop para poder reproducir otra animación.

Es importante definir y asignar al menos una animación para cada estado que se produzca para el carácter. Si no proporcionas estas animaciones y asignaciones de estado, es posible que el carácter no parezca comportarse correctamente al usuario. Sin embargo, si no se produce un estado para un carácter determinado, no es necesario asignar una animación a ese estado. Por ejemplo, si la aplicación host nunca llama al método MoveTo , puede omitir la creación y asignación de animaciones de estado en movimiento.

State Ejemplo de uso
GesturingDown Cuando se procesa el método de animación GestureAt .
GesturingLeft Cuando se procesa el método de animación GestureAt .
GesturingRight Cuando se procesa el método de animación GestureAt .
GesturingUp Cuando se procesa el método de animación GestureAt .
Oído Cuando se detecta el principio de la entrada hablada.
Ocultar Cuando el usuario o la aplicación ocultan el carácter.
IdlingLevel1 Cuando el carácter comienza el estado de idling .
IdlingLevel2 Cuando el carácter comienza el segundo estado de nivel de idling .
IdlingLevel3 Cuando el carácter comienza el estado final de nivel de idling .
Escuchar Cuando el carácter comienza a escuchar (el usuario presiona primero la tecla activa de entrada de voz).
MoveDown Cuando se procesa el método de animación MoveTo .
MoveLeft Cuando se procesa el método de animación MoveTo .
MoveRight Cuando se procesa el método de animación MoveTo .
MoveUp Cuando se procesa el método de animación MoveTo .
Mostrando Cuando el usuario o la aplicación muestran el carácter.
Hablando Cuando se procesa el método de animación Speak .

Estados de audición y escucha

La animación que se asigna al estado de escucha se reproduce cuando el usuario presiona la tecla activa de inserción para hablar para la entrada de voz. Crea y asigna una animación corta que hace que el personaje se vea atento. De forma similar, defina su animación Return para tener una duración corta para que el personaje juegue su animación de estado de audición cuando el usuario hable. Una animación de estado de audición también debe ser breve y diseñada para que el usuario sepa que el personaje está escuchando activamente lo que dice el usuario. Las inclinaciones de la cabeza u otros gestos leves son adecuados. Para proporcionar variabilidad natural, proporcione varias animaciones de estado de audición .

Estados Gesturing

Solo tienes que crear y asignar animaciones de estado de Gesturing si planeas usar el método GestureAt . Las animaciones de estado Gesturing se reproducen cuando Microsoft Agent procesa una llamada al método GestureAt . Si defines superposiciones de boca para las animaciones de estado Gesturing , el carácter puede hablar a medida que hace gestos.

Los servicios de animación determinan la ubicación del personaje y su relación con la ubicación de las coordenadas especificadas en el método y reproducen una animación adecuada. La dirección Gesturing siempre es con respecto al carácter; por ejemplo, GestureRight debe ser un gesto a la derecha del carácter.

Los estados que muestran y ocultan

Los estados Mostrar y Ocultar reproducen las animaciones asignadas cuando el usuario o la aplicación host solicitan mostrar u ocultar el carácter. Estos estados también establecen correctamente el estado Visible del marco de caracteres. Al definir animaciones para estos estados, tenga en cuenta que un carácter puede aparecer o salir en cualquier ubicación de pantalla. Dado que el usuario puede mostrar u ocultar cualquier carácter, siempre admite al menos una animación para estos estados.

Las animaciones que se asignan al estado Mostrar suelen terminar con un fotograma que contiene la imagen de posición neutra del carácter. Por el contrario, las animaciones de estado ocultas suelen comenzar con la posición neutra. Mostrar y ocultar animaciones de estado pueden incluir un fotograma vacío al principio o al final, respectivamente, para proporcionar una transición desde el estado actual del carácter.

Estados de idling

Los estados de idling son progresivos. Los servicios de animación comienzan a usar las asignaciones de nivel 1 para el primer período de inactividad y usan las animaciones de nivel 2 para el segundo. Después de esto, el ciclo de inactividad avanza a las animaciones asignadas de nivel 3 y permanece en este estado hasta que se cancela, como cuando comienza una nueva solicitud de animación.

Diseñe animaciones para los estados de Idling para comunicar el estado del carácter, pero no distraer al usuario. Las animaciones deben reflejar adecuadamente la capacidad de respuesta del carácter de maneras sutiles pero claras. Por ejemplo, mirar alrededor o parpadear son buenas animaciones para asignar al estado IdlingLevel1 . Las animaciones de lectura funcionan bien para el estado IdlingLevel2 . Dormir o escuchar música con auriculares son buenos ejemplos de animaciones que se asignan al estado IdlingLevel3 . Las animaciones que incluyen muchos o grandes movimientos no son adecuadas para animaciones inactivas, ya que hacen que el usuario preste atención. Dado que las animaciones de estado de idling se reproducen con frecuencia, proporcionan varias animaciones de estado de idling , especialmente para los estados IdlingLevel1 e IdlingLevel2 .

Tenga en cuenta que una aplicación puede desactivar el procesamiento de inactividad automático para un carácter y administrar el propio estado de idling del carácter. Los estados de idling del agente están diseñados para ayudarte a evitar cualquier situación en la que el personaje no tenga animación para jugar. Una imagen de caracteres que no cambia después de un breve período de tiempo es como una aplicación que muestra un puntero de espera durante mucho tiempo, lo que desvía del sentido de credibilidad e interactividad. Mantener la ilusión no toma mucho: a veces solo un parpadeo animado, respiración visible o cambio corporal.

El estado de habla

Los servicios de animación usan el estado Habla cuando no se encuentra una animación de habla para la animación actual. Asigne una animación de habla simple a este estado. Por ejemplo, puede usar un solo fotograma que consta de la posición neutra del carácter con superposiciones de boca.

Estados móviles

Los estados de movimiento se reproducen cuando una aplicación llama al método MoveTo . Los servicios de animación determinan qué animación se va a reproducir en función de la ubicación actual del personaje y las coordenadas especificadas. La dirección del movimiento se basa en la posición del carácter. Por lo tanto, la animación que asignas a la animación MovingLeft debe basarse en la izquierda del carácter. Si no usas el método MoveTo , puedes omitir la creación y asignación de una animación.

Las animaciones de estado en movimiento deben animar el carácter en su posición móvil. El último fotograma de esta animación se muestra cuando el marco del carácter se mueve en la pantalla. No hay compatibilidad para animar el carácter mientras se mueve su fotograma.

Conjunto de animaciones estándar

Aunque puede diseñar un carácter personalizado para tener las animaciones que desea usar, Microsoft Agent define un conjunto de animaciones estándar. Los caracteres que se ajustan a esta definición se pueden seleccionar como un carácter predeterminado.

En la tabla siguiente se enumeran las animaciones incluidas en el conjunto de animaciones estándar. Incluso si va a crear un carácter personalizado, puede usar la lista como guía para diseñar sus propios caracteres. Los caracteres que admiten el conjunto de animaciones estándar deben admitir al menos las siguientes animaciones.

Animación Ejemplo de uso Animación de ejemplo
Confirmación Cuando el carácter confirma la solicitud del usuario. Los anuncios de caracteres o parpadean el gesto de mano "Ok". Tenga en cuenta que esta animación debe devolver el carácter a su posición neutra.
Alerta1,2 Cuando el personaje está esperando instrucciones, normalmente se reproduce después de que el usuario active el modo de escucha. El carácter se enfrenta delante, respira, parpadea ocasionalmente, pero claramente esperando instrucciones.
Anuncio1,2 Cuando el carácter ha encontrado información para el usuario. Gestos de carácter levantando cejas y manos o abre un sobre.
Blink Cuando el carácter termina de hablar o inactivo. El carácter parpadea naturalmente los ojos.
Confundido1,2 Cuando el carácter no entiende qué hacer. El carácter rasca la cabeza.
Felicitaciónde 1,2 Cuando el carácter o el usuario completan una tarea (una forma más fuerte de la animación De confirmación ). El carácter realiza un gesto de felicitación, transmite "Sí!"
Rechazar1,2 Cuando el carácter no puede hacer o rechazar la solicitud del usuario. El carácter agita la cabeza, transmite "no puede hacer".
DoMagic1 El carácter se prepara para mostrar algo. Manos o varita de ondas de caracteres.
DoMagic2 El carácter completa la presentación de algo. El carácter completa el gesto mágico.
DontRecognize1,2 Cuando el carácter no reconoce la solicitud del usuario. El carácter mantiene la mano a la oreja.
Explicar1,2 Cuando el carácter explica algo al usuario. Gestos de caracteres como si explicara algo.
GestureDown1,2 Cuando el carácter debe apuntar a algo debajo de él. El carácter apunta hacia abajo.
GestureLeft1,2 Cuando el carácter necesita apuntar a algo a la izquierda. Puntos de carácter con mano izquierda o se transforma en una flecha que apunta a la izquierda.
GestoRight1,2 Cuando el carácter necesita apuntar a algo a su derecha. Puntos de carácter con mano derecha o se transforma en una flecha que apunta a la derecha.
GestureUp1,2 Cuando el carácter debe apuntar a algo por encima de él. El carácter apunta hacia arriba.
GetAttention Cuando el carácter necesita notificar al usuario algo importante. Las manos de las ondas de caracteres o saltan hacia arriba y abajo.
GetAttentionContinued Para resaltar la importancia de la notificación. Continuación o repetición del gesto inicial.
GetAttentionReturn Cuando el carácter completa la animación GetAttention o GetAttentionContinued . El carácter vuelve a su posición neutra.
Saludo1,2 Cuando el usuario inicia el sistema. Las sonrisas y las olas de los personajes.
Audición1 Cuando el carácter escucha el inicio de una expresión hablada (escuchando activamente). El carácter se inclina hacia delante y los anuncios, o gira la cabeza que muestra la respuesta a la entrada de voz. Nota: Esta animación recorre en bucle algún fotograma intermedio que se produce después de que el carácter se mueva a una posición adecuada.
Audición2 Cuando el carácter escucha el inicio de una expresión hablada (escuchando activamente). Otra variación del tipo de animación usada en Hearing1Nota: Esta animación recorre en bucle algún fotograma intermedio que se produce después de que el carácter se mueva a una posición adecuada.
Ocultar Cuando el usuario descarta el carácter. El carácter quita el propio de la pantalla.
Idle1_1 Cuando el carácter no tiene ninguna tarea y el usuario no interactúa con el carácter. El carácter parpadea o mira, permanece en o vuelve a la posición neutra.
Idle1_2 Cuando el carácter no tiene ninguna tarea y el usuario no interactúa con el carácter. Otra variación del tipo de animación usada en Idle1_1.
Idle2_1 Cuando el carácter ha estado inactivo durante algún tiempo. Bostezas de caracteres o lee la revista que permanece en o vuelve a la posición neutral.
Idle2_2 Cuando el carácter ha estado inactivo durante algún tiempo. Otra variación del tipo de animación usada en Idle2_1.
Idle3_1 Cuando el carácter ha estado inactivo durante mucho tiempo. Bostezas de caracteres.
Idle3_2 Cuando el carácter ha estado inactivo durante mucho tiempo. El personaje duerme o pone auriculares para escuchar música. Nota: Esta animación recorre en bucle algún fotograma intermedio que se produce después de que el carácter se mueva a una posición adecuada.
LookDown Cuando el carácter necesita mirar hacia abajo. El carácter mira hacia abajo.
LookLeft Cuando el carácter necesita mirar a la izquierda. El carácter se ve a la izquierda.
LookRight Cuando el carácter necesita mirar a la derecha. El carácter se ve a la derecha.
Búsqueda Cuando el carácter necesita buscar. El carácter busca.
MoveDown Cuando el carácter se prepara para bajar. El carácter pasa a una posición de pie/volando hacia abajo.
MoveLeft Cuando el carácter se prepara para moverse a la izquierda. El carácter pasa a una posición izquierda caminando o volando.
MoveRight Cuando el carácter se prepara para moverse a la derecha. El carácter pasa a una posición de pie/vuelo a la derecha.
MoveUp Cuando el carácter se prepara para subir. El carácter pasa a una posición de pie/volando hacia arriba.
Complacido1,2 Cuando el carácter está satisfecho con la solicitud o elección del usuario. Sonrisas de personajes.
Process Cuando el carácter realiza algún tipo de tarea genérica. El carácter presiona botones o usa algún tipo de herramienta.
Procesamiento Cuando el carácter está ocupado trabajando en una tarea genérica. Las cunas de caracteres en la almohadilla de papel o usan algún tipo de herramienta. Nota: Esta animación recorre en bucle algún fotograma intermedio que se produce después de que el carácter se mueva a una posición adecuada.
Lectura Cuando el carácter lee algo al usuario. El carácter muestra libro o papel, lee y examina al usuario.
ReadContinued Cuando el carácter lee más al usuario. El carácter vuelve a leer y, a continuación, vuelve a mirar al usuario.
ReadReturn Cuando el carácter completa la animación Read o ReadContinued . El carácter vuelve a su posición neutra.
Lectura Cuando el carácter lee algo, pero no puede aceptar la entrada. Lecturas de caracteres de un pedazo de papel. Nota: Esta animación recorre en bucle algunos fotogramas intermedios que se producen después de que el carácter se mueva a una posición adecuada.
RestPose Cuando el personaje habla de su posición neutral. El carácter se encuentra con postura relajada pero atenta.
Tristes1,2 Cuando el carácter se decepciona con la elección del usuario. El carácter desaproba o se ve decepcionado.
Búsqueda Cuando el carácter busca algo. Los caracteres se ordenan mediante cajón de archivos u otro contenedor buscando algo.
Buscando Cuando el carácter está buscando información especificada por el usuario. Los caracteres se ordenan mediante cajón de archivos u otro contenedor buscando algo. Nota: Esta animación recorre en bucle algunos fotogramas intermedios que se producen después de que el carácter se mueva a una posición adecuada.
Mostrar Cuando el carácter se inicia o vuelve después de invocarse. El carácter aparece en una bocada de humo, haces en o camina en pantalla.
StartListening1,2 Cuando el carácter está escuchando. El carácter pone la mano en la oreja.
StopListening1,2 Cuando el carácter deja de escuchar. El carácter coloca las manos sobre los oídos.
Sugerir1,2 Cuando el carácter tiene una sugerencia o sugerencia para el usuario. La bombilla aparece junto al carácter.
Sorprendido1,2 Cuando el carácter es sorprendido por la acción o la elección del usuario. El carácter amplía los ojos, abre la boca.
Pienseen 1,2 Cuando el personaje está pensando en algo. El carácter busca y mantiene la mano en la cabeza.
1,2incierta Cuando el carácter necesita que el usuario confirme una solicitud. El personaje parece cuestionario, transmite ("¿Estás seguro?")
Onda1,2 Cuando el usuario decide apagar el servidor o el sistema. Ondas de caracteres adiós o hola.
Escritura Cuando el carácter escucha las instrucciones del usuario. El carácter muestra papel, escribe y examina al usuario.
WriteContinued Cuando el carácter continúa escuchando las instrucciones del usuario. Los caracteres escriben en una pieza de papel y examinan al usuario.
WriteReturn Cuando el carácter completa la animación Write o WriteContinued . El carácter vuelve a su posición neutra.
Escritura Cuando el carácter escribe información para el usuario. Escribe caracteres en papel. Nota: Este bucle de animación.

La animación requiere superposiciones de boca y un marco de habla definido.

La animación requiere una animación return asignada en función de su bifurcación de salida o una animación De retorno explícita.

Además, un carácter debe tener las siguientes asignaciones de estado.

State Animaciones necesarias
GesturingDown GestureDown
GesturingLeft GestureLeft
GesturingRight GestoRight
GesturingUp GestureUp
Oído Audición1, Audición2
Ocultar Ocultar
IdlingLevel1 Blink, Idle1_1, Idle1_2
IdlingLevel2 Blink, Idle1_1, Idle1_2, Idle2_1, Idle2_2
IdlingLevel3 Idle3_1, Idle3_2
Escuchar Alerta
MoveDown MoveDown
MoveLeft MoveLeft
MoveRight MoveRight
MoveUp MoveUp
Mostrando Mostrar
Hablando RestPose