Partilhar via


Estados Agentes

[O Microsoft Agent foi preterido a partir do Windows 7 e pode não estar disponível em versões subsequentes do Windows.]

Os serviços de animação do Microsoft Agent reproduzem automaticamente determinadas animações para você. Por exemplo, quando você usa MoveTo ou comandos GestureAt, os serviços de animação reproduzem uma animação apropriada. Da mesma forma, após o tempo limite ocioso, os serviços reproduzem animações automaticamente. Para dar suporte a esses estados, você pode definir animações apropriadas e, em seguida, atribuí-las aos estados. Você ainda pode reproduzir qualquer animação definida diretamente usando o método Play, mesmo que a atribua a um estado.

Você pode atribuir várias animações ao mesmo estado, e os serviços de animação escolherão aleatoriamente uma de suas animações. Isso permite que seu personagem exiba uma variedade muito mais natural em seu comportamento.

Embora as animações atribuídas a estados possam incluir quadros ramificados, evite animações em loop (animações que ramificam para sempre). Caso contrário, você terá que usar o método Stop antes de poder reproduzir outra animação.

É importante definir e atribuir pelo menos uma animação para cada estado que ocorre para o personagem. Se você não fornecer essas animações e atribuições de estado, seu personagem pode não parecer se comportar adequadamente para o usuário. No entanto, se um estado não ocorrer para um caractere específico, você não precisará atribuir uma animação a esse estado. Por exemplo, se seu aplicativo host nunca chamar o método MoveTo, você poderá ignorar a criação e a atribuição de animações de estado Moving.

Estado Exemplo de Utilização
GesturingDown Quando o GestureAt método de animação é processado.
GesturingLeft Quando o GestureAt método de animação é processado.
GesturingRight Quando o GestureAt método de animação é processado.
GesturingUp Quando o GestureAt método de animação é processado.
Audição Quando o início da entrada falada é detetado.
Escondendo Quando o usuário ou o aplicativo oculta o personagem.
IdlingLevel1 Quando o personagem começa o Idling estado.
IdlingLevel2 Quando o personagem começa o segundo Idling estado de nível.
IdlingLevel3 Quando o personagem começa o final, Idling estado de nível.
Ouvir Quando o caractere começa a ouvir (o usuário primeiro pressiona a tecla de atalho de entrada de fala).
MovingDown Quando o MoveTo método de animação é processado.
MovingLeft Quando o MoveTo método de animação é processado.
MovingRight Quando o MoveTo método de animação é processado.
MovingUp Quando o MoveTo método de animação é processado.
Visualizar Quando o usuário ou o aplicativo mostra o personagem.
Falando Quando o método de animação Speak é processado.

Os Estados de Audição e Escuta

A animação atribuída ao estado Listening é reproduzida quando o usuário pressiona a tecla de atalho push-to-talk para entrada de fala. Crie e atribua uma pequena animação que faça o personagem parecer atento. Da mesma forma, defina sua animação Return para ter uma curta duração para que o personagem reproduza sua animação Ouvir estado quando o usuário falar. Uma animação Hearing state também deve ser breve e projetada para que o usuário saiba que o personagem está ouvindo ativamente o que o usuário diz. Inclinações da cabeça ou outros gestos ligeiros são apropriados. Para fornecer variabilidade natural, forneça várias animações de estado de audição.

Os Estados Gestuculantes

Você precisa criar e atribuir animações de estado Gesturing somente se planeja usar o métodoGestureAt. Gesturing animações de estado são reproduzidas quando o Microsoft Agent processa uma chamada para o método GestureAt. Se você definir sobreposições bucais para suas animações de estado gesticulação, o personagem pode falar enquanto gesticula.

Os serviços de animação determinam a localização do personagem e sua relação com a localização das coordenadas especificadas no método e reproduzem uma animação apropriada. A direção gesticular é sempre com respeito ao personagem; por exemplo, GestureRight deve ser um gesto à direita do personagem.

Os Estados de Exibição e Ocultação

Os estados Mostrando e Ocultando reproduzem as animações atribuídas quando o usuário ou o aplicativo host solicita para mostrar ou ocultar o personagem. Esses estados também definem adequadamente o estado Visível do quadro de caracteres. Ao definir animações para esses estados, lembre-se de que um personagem pode aparecer ou partir em qualquer local da tela. Como o usuário pode mostrar ou ocultar qualquer caractere, sempre suporte pelo menos uma animação para esses estados.

As animações atribuídas ao Mostrando estado normalmente terminam com um quadro contendo a imagem de posição neutra do personagem. Por outro lado, animações de estado Ocultando normalmente começam com a posição neutra. Mostrando e As animações de estado podem incluir um quadro vazio no início ou no final, respectivamente, para fornecer uma transição do estado atual do personagem.

Os Estados em marcha lenta sem carga

Os estados de Idling são progressistas. Os serviços de animação começam a usar as atribuições de Nível 1 para o primeiro período ocioso e usam as animações de Nível 2 para o segundo. Depois disso, o ciclo ocioso progride para as animações atribuídas ao Nível 3 e permanece nesse estado até ser cancelado, como quando uma nova solicitação de animação começa.

Crie animações para os estados Idling para comunicar o estado do personagem, mas não para distrair o usuário. As animações devem refletir adequadamente a capacidade de resposta do personagem de maneiras sutis, mas claras. Por exemplo, olhar ao redor ou piscar são boas animações para atribuir ao estado IdlingLevel1. A leitura de animações funciona bem para o estado IdlingLevel2. Dormir ou ouvir música com auscultadores são bons exemplos de animações para atribuir ao estado IdlingLevel3. Animações que incluem muitos ou grandes movimentos não são adequadas para animações ociosas porque chamam a atenção do usuário. Como animações de estado Idling são reproduzidas com frequência, forneça várias animações de estado Idling, especialmente para os IdlingLevel1 e estados de IdlingLevel2.

Observe que um aplicativo pode desativar o processamento ocioso automático de um caractere e gerenciar o próprio estado Idling do personagem. Os estados do Agent Idling são projetados para ajudá-lo a evitar qualquer situação em que o personagem não tenha animação para jogar. Uma imagem de personagem que não muda após um breve período de tempo é como um aplicativo que exibe um ponteiro de espera por um longo tempo, o que prejudica a sensação de credibilidade e interatividade. Manter a ilusão não exige muito: às vezes apenas um piscar animado, respiração visível ou mudança de corpo.

O Estado Falante

Os serviços de animação usam o estado Speaking quando uma animação de fala não pode ser encontrada para a animação atual. Atribua uma animação de fala simples a este estado. Por exemplo, você pode usar um único quadro que consiste na posição neutra do personagem com sobreposições de boca.

Os Estados em Movimento

Os estados Moving play quando um aplicativo chama o MoveTo método. Os serviços de animação determinam qual animação reproduzir com base na localização atual do personagem e nas coordenadas especificadas. A direção do movimento é baseada na posição do personagem. Portanto, a animação que você atribui à animação MovingLeft deve ser baseada na animação esquerda do personagem. Se você não usar o método MoveTo, poderá ignorar a criação e a atribuição de uma animação.

Mover animações de estado deve animar o personagem em sua posição móvel. O último quadro desta animação é exibido quando o quadro do personagem é movido na tela. Não há suporte para animar o personagem enquanto seu quadro se move.

Conjunto de animação padrão

Embora você possa criar um caractere personalizado para ter as animações que deseja usar, o Microsoft Agent define um conjunto de animações padrão. Os caracteres que estão em conformidade com essa definição podem ser selecionados como um caractere padrão.

A tabela a seguir lista as animações incluídas no conjunto de animações padrão. Mesmo se você estiver criando um personagem personalizado, você pode querer usar a lista como um guia para projetar seus próprios personagens. Os caracteres que suportam o conjunto de animações padrão devem suportar pelo menos as animações a seguir.

Animação Exemplo de Utilização Exemplo de animação
Reconheça Quando o personagem reconhece o pedido do usuário. O caractere acena ou pisca o gesto da mão "OK". Observe que essa animação deve retornar o personagem à sua posição neutra.
Alerta1,2 Quando o personagem está esperando instruções, normalmente jogadas depois que o usuário ativa o modo de audição. O personagem enfrenta frente, respirando, piscando ocasionalmente, mas claramente aguardando instrução.
Anunciar1,2 Quando o caractere encontrou informações para o usuário. Gestos de caráter levantando sobrancelhas e mão ou abrindo um envelope.
Blink Quando o personagem termina de falar ou ocioso. O caráter pisca naturalmente os olhos.
Confuso1,2 Quando o personagem não entende o que fazer. Personagem coça a cabeça.
Parabéns1,2 Quando o personagem ou usuário conclui uma tarefa (uma forma mais forte da animação Reconhecer.) Personagem realiza gesto de felicitação, transmite "Sim!"
Declínio1,2 Quando o caractere não pode fazer ou recusa a solicitação do usuário. O personagem balança a cabeça, transmite "não pode fazer".
DoMagic1 O personagem se prepara para exibir algo. O personagem acena com as mãos ou a varinha.
DoMagic2 O personagem completa a exibição de algo. Personagem completa gesto mágico.
DontRecognize1,2 Quando o personagem não reconheceu a solicitação do usuário. Personagem segura de mão a orelha.
Explique1,2 Quando o personagem explica algo ao usuário. Gestos de caráter como se explicassem algo.
GestureDown1,2 Quando o personagem precisa apontar para algo abaixo dele. O personagem aponta para baixo.
GestureLeft1,2 Quando o personagem precisa apontar para algo à sua esquerda. O caractere aponta com a mão esquerda ou se transforma em uma seta apontando para a esquerda.
GestureRight1,2 Quando o personagem precisa apontar para algo à sua direita. O personagem aponta com a mão direita ou se transforma em uma seta apontando para a direita.
GestureUp1,2 Quando o personagem precisa apontar para algo acima dele. O personagem aponta para cima.
GetAttention Quando o personagem precisa notificar o usuário sobre algo importante. O personagem acena com as mãos ou pula para cima e para baixo.
GetAttentionContinued Sublinhar a importância da notificação. Uma continuação ou repetição do gesto inicial.
GetAttentionReturn Quando o personagem concluir o GetAttention ou GetAttentionContinued animação. O caráter retorna à sua posição neutra.
Cumprimentar1,2 Quando o usuário inicia o sistema. Sorrisos e ondas de personagem.
Audição1 Quando o personagem ouve o início de um enunciado falado (escuta ativa). O personagem inclina-se para a frente e acena ou vira a cabeça mostrando resposta à entrada de fala. Nota: Esta animação faz um loop para algum quadro intermediário que ocorre depois que o personagem se move para uma posição apropriada.
Audição2 Quando o personagem ouve o início de um enunciado falado (escuta ativa). Outra variação do tipo de animação usada em Hearing1Nota: Esta animação faz um loop para algum quadro intermediário que ocorre depois que o personagem se move para uma posição apropriada.
Ocultar Quando o usuário descarta o personagem. O personagem se remove da tela.
Idle1_1 Quando o personagem não tem tarefa e o usuário não está interagindo com o personagem. O personagem pisca ou olha ao redor, permanecendo ou retornando à posição neutra.
Idle1_2 Quando o personagem não tem tarefa e o usuário não está interagindo com o personagem. Outra variação do tipo de animação usada em Idle1_1.
Idle2_1 Quando o personagem está ocioso há algum tempo. O personagem boceja ou lê revista, permanecendo ou retornando à posição neutra.
Idle2_2 Quando o personagem está ocioso há algum tempo. Outra variação do tipo de animação usada em Idle2_1.
Idle3_1 Quando o personagem está ocioso há muito tempo. Bocejo de personagem.
Idle3_2 Quando o personagem está ocioso há muito tempo. Personagem dorme ou coloca fones de ouvido para ouvir música. Nota: Esta animação faz um loop para algum quadro intermediário que ocorre depois que o personagem se move para uma posição apropriada.
LookDown Quando o personagem precisa olhar para baixo. O personagem olha para baixo.
LookLeft Quando o personagem precisa olhar para a esquerda. O personagem olha para a esquerda.
LookRight Quando o personagem precisa olhar para a direita. O personagem olha para a direita.
Pesquisa Quando o personagem precisa olhar para cima. O personagem olha para cima.
MoveDown Quando o personagem se prepara para descer. Personagem transita para uma posição de andar/voar para baixo.
MoveLeft Quando o personagem se prepara para se mover para a esquerda. O personagem transita para uma posição esquerda/voadora.
MoveRight Quando o personagem se prepara para se mover para a direita. Transições de personagem para uma posição correta de andar/voar.
MoveUp Quando o personagem se prepara para subir. O personagem transita para uma posição de andar/voar.
Satisfeito1,2 Quando o personagem está satisfeito com o pedido ou escolha do usuário. O personagem sorri.
Processo Quando o personagem executa algum tipo de tarefa genérica. O personagem pressiona botões ou usa algum tipo de ferramenta.
Processamento Quando o personagem está ocupado trabalhando em uma tarefa genérica. Rabiscos de caracteres em bloco de papel ou usa algum tipo de ferramenta. Nota: Esta animação faz um loop para algum quadro intermediário que ocorre depois que o personagem se move para uma posição apropriada.
Leia Quando o personagem lê algo para o usuário. O personagem exibe livro ou papel, lê e olha para o usuário.
ReadContinued Quando o caractere lê mais para o usuário. O caractere lê novamente e, em seguida, olha de volta para o usuário.
ReadReturn Quando o personagem concluir a de leitura ou animação ReadContinuated. O caráter retorna à sua posição neutra.
Leitura Quando o personagem lê algo, mas não pode aceitar entrada. O personagem lê de um pedaço de papel. Nota: Esta animação faz um loop para alguns quadros intermediários que ocorrem depois que o personagem se move para uma posição apropriada.
RestPose Quando o personagem fala a partir de sua posição neutra. O caráter fica de pé com uma postura descontraída, mas atenta.
Triste1,2 Quando o personagem está desapontado com a escolha do usuário. O personagem franze a testa ou parece dececionado.
Pesquisa Quando o personagem procura por algo. O personagem embaralha pela gaveta de arquivos ou outro recipiente à procura de algo.
Pesquisando Quando o caractere está procurando informações especificadas pelo usuário. O personagem embaralha pela gaveta de arquivos ou outro recipiente à procura de algo. Nota: Esta animação faz um loop para alguns quadros intermediários que ocorrem depois que o personagem se move para uma posição apropriada.
Mostrar Quando o personagem começa ou retorna depois de ser convocado. O personagem aparece em um sopro de fumaça, entra ou caminha na tela.
StartListening1,2 Quando o personagem está ouvindo. Personagem coloca a mão no ouvido.
StopListening1,2 Quando o personagem para de ouvir. Personagem coloca as mãos sobre as orelhas.
Sugira1,2 Quando o personagem tem uma dica ou sugestão para o usuário. Lâmpada aparece ao lado do caractere.
Surpreendido1,2 Quando o personagem é surpreendido pela ação ou escolha do usuário. O caráter arregala os olhos, abre a boca.
Pense1,2 Quando o personagem está pensando em algo. O personagem olha para cima e segura a mão na cabeça.
Incerto1,2 Quando o personagem precisa que o usuário confirme uma solicitação. Personagem parece quizzical, transmite ("Tem certeza?")
Wave1,2 Quando o usuário opta por desligar o servidor ou sistema. Personagem acena adeus ou olá.
Escreva Quando o personagem está ouvindo instruções do usuário. O caractere exibe papel, escreve e olha para o usuário.
WriteContinued Quando o personagem continua ouvindo instruções do usuário. O personagem escreve em um pedaço de papel e olha para o usuário.
WriteReturn Quando o personagem concluir a Write ou animação WriteContinued. O caráter retorna à sua posição neutra.
Escrevendo Quando o caractere escreve informações para o usuário. Personagem escreve em pedaço de papel. Nota: Esta animação é executada.

A animação requer sobreposições de boca e um quadro de fala definido.

A animação requer uma animação de Retorno atribuída com base em sua ramificação de saída ou uma animação de Retorno explícita.

Além disso, um personagem deve ter as seguintes atribuições de estado.

Estado Animações necessárias
GesticulaçãoDown Gesto para baixo
GesticulaçãoEsquerda GestoEsquerda
GesturingRight GestureRight
Gesticulação Gestos
Audição Audição1, Audição2
Escondendo Ocultar
Nível de marcha lenta sem carga1 Blink, Idle1_1, Idle1_2
Nível de marcha lenta sem carga2 Blink, Idle1_1, Idle1_2, Idle2_1 Idle2_2
Nível de marcha lenta sem carga3 Idle3_1, Idle3_2
Ouvir Alerta
MovingDown MoveDown
MovingLeft MoveLeft
MovingRight MoveRight
MovingUp MoveUp
Exibindo Programa
Expressão oral RestPose