Multidões de bípedes

A multidão de bípedes é um caso especial de simulação de multidões exigida pela natureza complexa do movimento dos animais com pernas. A locomação do bípede exibe dinâmicas complicadas e restrições e as restrições do pé com cinemática inversa. Como tal, as trajetórias com curva suave calculaas a partir dos parâmetros de movimento do delegado, enquanto são adequadas para pássaros, peixes, insetos e cobras, não são ricas o suficiente para animar a microestrutura do movimento do bípede. Portanto, diversos recursos em Multidão são focados nas necessidades especiais de bípedes.

Para gerar o nível de nuance necessário, os clipes de movimento animados formam a base para o repertório de movimentos dos bípedes. Em outras palavras, durante uma simulação de bípede/multião, os delegados não têm nehum efeito sobre o movimento do bípede, apenas estabelecem metas a serem alcançadas, usando os cortes disponíveis no gráfico de Fluxo de Movimento. Com essa abordagem, conhecida como síntese de movimento, o animador pode controlar de forma precisa os detalhes no movimento ao usar a animação ou utilizar a captura de movimento para produzir um conjunto de clipes que descrevem como um membro na multidão se comporta.

Por exemplo, se quiser animar um multidão de maratonistas fazendo seu caminho pelas ruas da cidade, é preciso ter clipes de movimento para vários tipos de caminhar, correr, descansar, beber água, aplaudir, etc. na verdade, cada um dos movimentos esperados para ver uma maratona pode ser representada com um clipe. Mas o movimento deve ser mais do que uma coleção fragmenta de clipes. Também se deve considerar como os movimentos podem ser sequenciados. Quais transições de movimento são possíveis a partir de um determinado clipe de movimento?

Para melhor compreender este processo, estude este tópico e siga o procedimento Como usar bípedes em uma simulação de multidões.

Rede de fluxo de movimento e possíveis scripts

A funcionalidade de Fluxo de Movimento de bípede oferece um mecanismo para definir como separar movimentos que se encaixam em uma animação fluente. Na verdade, a rede do fluxo de movimento descreve quais movimentos podem seguir a partir de outros movimentos. Quando a rede do fluxo de movimento estiver definido, um amplo conjunto de ações de animação é possível ao segiur os diferentes caminhos através da rede. Em bípede, um caminho através da rede é chamado de script de fluxo de movimento.

Por exemplo, abaixo está indicado uma rede de fluxo de movimento.

Esta é uma rede bastante simples de movimentos possíveis, porque os personagens podem apenas iniciar, parar, girar em ângulos de 90 graus à esquerda e à direita (walk_L90 e walk_R90) e fazer um (walk_180) de face. No entanto, para interação de multidão mais natural, é aconselhável expandir a rede de fluxo de movimento para incluir variações mais curtas e mais ajustadas, como ajustes em incrementos de 45 graus, movimento em diferentes direções enquanto estiver virado para o mesmo lugar, movimentos lentos e em diferentes velocidades. A Biblioteca de Movimentos de Bípedes tem uma ampla lista de clipes para testar.

Dica: É possível criar clipes de movimento que curvam um pouco para a esquerda e direita, aplicando a operação de dobra da pisada do bípede para clipes de moviemnto em linha reta. Se os clipes forem capturados de movimento, deve-se empregar a extração de pisadas durante a importação no preparo para a operação de dobra. Adicionar clipes quegirem lentamente permitirá que a simulação da multidão de bípedes faça correção no minuto no cabeçalho para alcançar os locais de destino com mais precisão.

Gráficos de fluxo de movimento que funcionam melhor ao incorporar transições ajustadas. Um bom método para verificar as transições de fluxo de movimento é criar scripts de teste ao construir o gráfico: adicione clipes ao gráfico, adicione as transições necessárias e otimize as transições. Otimizar as transições funciona bem como um ponto de partida e, muitas vezes, produz a transição mais suave. A seguir, crie um novo roteiro que utiliza as transições e utilize o script para ajustar o fluxo de movimento até que os pés não deslizem.

O recurso de Redes de Fluxo de Movimento Compartilhadas permite que muitos bípedes usem uma única drede de fluxo de movimento. Portanto, é prático tornar as redes de fluxo de movimento maiores sem carregar a memória do computador.

Metas de comportamento direcionada ao delegado

É possível dar a um bípede um objetivo de comportamento ao associá-lo a um sistema de multidão e, a seguir, atribuir os comportamentos ao delegado.

Por exemplo, na amostra acima, os objetivos de comportamento dos delegados de cada bípede são:

Durante uma simulação de multidões de bípede, o Character Studio tenta calcular o melhor script de fluxo de movimento para cada membro bípede da multidão que atenda às metas de comportamento do delegado associado. Em outras palavras:

Assim, na amostra, a simulação sempre irá escolher a melhor opção disponível do clipe de caminhada na rede que direciona o delegado do bípede até a esfera. Cada script de bípedes se desenvolve conforme a multidão "Resolver" calcula. É como se fosse um "mecanismo de jogo" em tempo real em que a oção de resolução da multidção do melhor clipe seguinte para determinado bípede está restrito pelo clipe ativo do bípede.

Fuga, Prioridade e Reversão da multidão de bípede

Como os bípedes nas multidões sempre estão seguindo scripts de fluxo de movimento, o comportamento de evitação para bípedes funciona de forma diferente. Ao contrário dos delegados comuns, os delegados de bípede podem se mover apenas pelos caminhos com script de fluxo de movimento, então, se ocorrer uma colisção, o Character Studio irá reverter até o clipe anterior no script atual e encontrar outro caminho. Isto pode levar algum tempo até calcular, quando as interações complexas de multidões estão presentes, já que uma única reversão pode não ser suficiente. O cálculo irá explorar todos os caminhos a partir de um determinado clipe de reversão e, se falhar, irá reverter ao clipe anterior, e assim por diante, até achar uma solução.

No exemplo, se o script atual de um bípede for:

walk_start
walk 
walk_L90

e uma colisão é encontrada durante o clipe walk_L90, o bípede irá reverter para o final do clipe de caminhada e tentar outro clipe diferente no lugar daquele que falhou. Se falhar, irá tentar a próxima melhor opção, e assim por diante.

Dica: A inclusão de parar e diminuir os movimentos na rede de fluxo de movimento, às vezes, é útil para prevenir o excesso de reversão, já que a parada sempre é uma forma eficaz para evitar colisões em uma situação justa. Em geral, quanto maior variação na velocidade e a direção possível, mais rapidamente o recurso de reversão irá encontrar uma solução.

Para tornar a reversão gerenciável com cálculos, os membros da multidão de bípedes são calculados, um de cada vez, na ordem de prioridade. Portanto, a interação da multidão é acumulada com o bípede seguinte adicionado à animação. Em outras palavras, cada um espera sua vez para calcular sua animação completa, o que implica em evitar os bípedes que foram calculados antes. Continua que os bípedes com a menor prioridade geralmente encontram mais colisões, já que devem dirigir em volta de todos os bípedes que têm maiores prioridades.

Preparação dos personagens para uma multidão de bípede

Para criar um simulação de multidão de bípede, serão necessários diversos bípedes. Por causa dos fatores de simulação de multidção no comprimento de perna de cada bípede, ao aplicar os clipes a ele, sua simulação será mais precisa se os bípedes forem do tamanho correto desde o início.

Um fluxo de trabalho simples seria:

Esta configuração facilita a fusão dos personagens na cena de multidões. Quando os personagens são mesclados, as malhas serão ocultadas, o que irá aprimorar o desempenho do sistema.

Preparação dos movimentos para uma multidão de bípede

Os clipes utilizados para uma simulação de multidões de bípede podem ser carregados a partir de amostras incluídas com o 3ds Max, importado dos arquivos de captura de movimento, ou criado a partir do zero.

A integridade das transições entre os clipes na rede de fluxo de movimento é muito importante ao criar uma simulação de multidões de bípedes. Ao criar as transições para um único bípede, é uma simples questão corrigir as transições individuais depois que o script do fluxo de movimento for criado. Com uma multidão, ter que corrigir as transições para cada bípede depois que a simulação estiver completa seria extremamente demorado. É muito mais eficaz para garantir que as transições sejam corrigidas antes de iniciar para resolver a simulação.

Uma forma de facilitar este processo é configurar todos os movimentos, de forma que a cada um tenha uma transição ideal de exatamente o mesmo número de quadros, tais como 10 ou 15. A seguir, é possível otimizar as transições para este comprimento e todas ou a maioria das transições funcionará perfeitamente.

Para verificar as transições, crie um script simples para um bípede com várias transições no gráfico. Verifique o movimento e trabalhe com transições individualmente até que pareçam corretas. Talvez não seja possível pegar todas as transações ruins, mas a maioria, sim Uma transação “ruim” seria aquela onde os pés pulam ou saltam quando deveriam estar caminhando ou qualquer outra alteração indesejada que ocorra uma transição. Consulte Personalizar transições.

Depois de resolver a simulação de multidão de bípede nas primeiras vezes, verifique novamente quanto às transições incorretas que podem estar ausente na primeira vez. Após algumas simulações, provavelmente todas ou quase todas as transições incorretas terão sido encontradas.

Restrições

Alguns recursos do sistema de multidão não são concebidos para funcionar com multidões de bípedes. Estes comportamentos e parâmetros não têm efeito em movimentos de multidão quando bípedes são utilizados com a simulação.

Procedimentos: como usar bípedes em uma simulação de multidões

A seguinte sequência de procedimentos oferece as etapas básicas para criar e salvar um gráfico de fluxo de movimento, atribuir vários bípedes ao delegado e, em seguida, compartilhar o gráfico de fluxo de movimento entre os bípedes, de maneira que Character Studio crie automaticamente scripts de fluxo de movimento separadado, com base nos comportamentos atribuídos aos seus delegados.

Nota: Estes procedimentos supõem que se sabe como animar os bípedes com passos e métodos de quadro-chave e salvar as animações como arquivos BIP. Para se preparar para o uso de Fluxo de Movimento Compartilhado, crie e salve uma faixa de movimentos de bípede como iniciar, caminhar, girar à direita, girar à esquerda, parar e esperar. Consulte Carregar e Salvar Animação BIP.

A primeira etapa é criar um gráfico de fluxo de movimento apropriado e salvá-lo em disco.

Para criar o fluxo de movimento compartilhado:

  1. Adicione um bípede e, em seguida, vá para o Painel de movimento.
  2. Sobre o bípede suspensa, clique em (Modo de fluxo de movimento).
  3. Na implementação Fluxo de movimento, clique em (Mostrar gráfico).
  4. Na barra de ferramentas Gráfico de fluxo de movimento, clique em (Criar vários clipes).

    Isto exibe uma caixa de diálogo Abrir, que permite selecionar qualquer número de arquivos BIP no mesmo diretório para adicionar simultaneamente ao gráfico de fluxo de movimento. Utilize Clique +Shift+ clique (clique e, a seguir, Shift+ clique) para selecionar vários arquivos contíguos, e Ctrl+ clique para selecionar arquivos não contíguos.

  5. Selecione os arquivos BIP que deseja que o Character Studio use para a síntese de movimento e, a seguir, clique em OK.

    Os arquivos são adicionados ao gráfico como clipes. Cada clipe é automaticamente nomeado de acordo com o arquivo de onde é derivado.

    Nota: Para obter melhores resultados, especialmente com simulações em que os bípedes estão para girar em diferentes ângulos, utilize o máximo de clipes diferentes possíveis. Uma configuração mínima deve incluir caminhadas à esquerda e à direita separadas a ângulos de 45, 90, 135 e 180 graus.

    O seguinte passo é acrescentar transições entre os clipes, o Character Studio sabe quais ações podem proceder de e para outras ações. É possível fazer isso manualmente para ter maior controle, mas para o teste inicial, pode-se economizar tempo, permitindo que Character Studio adicione e otimize as transições automaticamente.

  6. Clique em (Sintetizar Gráfico do Fluxo de Movimento). Isso utiliza os primeiros 30 por cento e os últimos 30 por cento da cada movimento para criar transições.

    O gráfico agora exibe setas de e para cada clipe, bem como a partir de cada clipe. Se desejar, exclua as transições que obviamente não pertencem, como aquelas dos clipes de início e parada.

    Como alternativa, é possível usar (Criar transição) para definir um gráfico personalizado.

  7. Otimizar as transições. Consulte a caixa de diálogo de Otimização da Transição.

    Quando você resolver a simulação de multidões gera automaticamente um movimento de script para o bípede com base neste gráfico. Quando se tem um gráfico com vários clipes, como neste caso, ele seleciona o clipe inicial para o script de um ou mais clipes designado como clipes de início aleatório.

    Se deseja verificar a integridade de transições dantes de continuar, fazer isso agora. Consulte Personalizar transições.

  8. Clique em (Selecionar clipes com início aleatório) e, a seguir, clique em um clipe.

    Isto diz ao Character Studio para iniciar o script com este clipe e utiliza a probabiilidade padrão de 100 por cento de que o clipe será escolhido.

    Se desejar que vários bípedes comecem com clipes diferentes, selecione vários clipes aleatórios de início ao pressionar e manter pressionada a tecla Ctrl enquanto executa a seleção. A configuração inicial padrão aleatório probabilidade de 100 para todos os cortes significa que Character Studio irá selecionar aleatoriamente entre elas para um corte inicial para cada bípedes de script.

    Para alterar a probabilidade de iniciar com clipes específicos, clique com o botão direito em um clipe e modifique sua configuração de Probabilidade de Início Aleatório. Por exemplo, suponhamos que queira iniciar o script de cada bípede com qualquer dos três clipes: corta A, B e C. Você deseja que o clipe A seja escolhido duas vezes mais frequenteque os clipes B e C. Nesse caso, usando a ferramenta de Clipes com Início Aleatório, clique primeiro no clipe A e, a seguir, Ctrl+ clique clipes B e C. Depois, clique com o botão direito alternadamente, atribuindo uma Probabilidade de Início Aleatório de 60 para o clipe A, e 30 para ambos os clipes B e C.

    Nota: Os valores de probabilidade são arbitrários; o que conta é a proporção. Por exemplo, os valores de 80/40/40 ou 20/10/10 funcionariam da mesma maneira.
    Nota: Também é possível configurar e alterar os clipes de início aleatório e as probabilidades de início no gráfico de Fluxo de Movimento, depois de carregar o arquivo MFE na caixa de diálogo de Fluxo de Movimento Compartilhado, descrito posteriomente neste procedimento.
    Nota: Se um script de fluxo de movimento já existir para um bípede, por exemplo, depois de solucionar uma simulação de multidões, o Character Studio pode utilizar o primeiro clipe no script para as soluções seguintes.
  9. Na implementação de Fluxo de Movimento, clique em (Salvar Arquivo) e salve gráfico no formato MFE.

    A próxima etapa no uso de bípedes em uma simulação de multidões é criar a simulação.

Para configurar a simulação de multidões:

  1. Redefinir o 3ds Max.
  2. Configurar uma simulação de multidões com qualquer número de delegados, usando os comportamentos apropriados para a cena de multidão que deseja criar. Primeiro, não utilize bípedes, trabalhe com os delegados somente definir o movimento dos membros da multidão.
    Dica: Ao iniciar com a síntese de movimento, use multidões menores com menos de oito delegados.
  3. Resolva a simulação e ajuste as configurações, conforme necessário, para obter o movimento.
  4. Mescle os bípedes e os personagens na cena, e associe cada delegado a outro bípede, usando a implementação de Parâmetros de Movimento d delegado, configurações do grupo de Bípede.

    É necessário selecionar o objeto do centro de massa (COM) do bípede (normalmente denominado Bip0#), como indica o cursor do mouse que se torna uma mira quando está sobre o COM na viewport ativa.

  5. Ative Usar Bípede para cada delegado.
    Dica: Para vincular qualquer número de delegados aos bípedes, todos ao mesmo tempo, selecione o objeto de ajuda de Multidão e clique na implementação Configurar (Associações Bípede/ Delegados). Utilize a caixa de diálogo para conectar os pares e ative Usar Bípede para cada delegado. Consulte Vincular Objetos aos Delegados.
  6. Defina o bípede/delegados para usar um início aleatório como primeiro clipe. É possível definir simultaneamente para vários delegados com a caixa de diálogo Editar Vários Delegados.

Para aplicar o fluxo de movimento compartilhado:

    A seguir, utilize a função de Fluxo de Movimento Compartilhado para aplicar o gráfico de fluxo de movimento salvo aos bípedes.

  1. Selecione qualquer bípede e vá para o painel de Movimento.
  2. Sobre o bípede suspensa, clique em (Modo de fluxo de movimento).
  3. Na implementação do Fluxo de Movimento, clique em (Fluxo de Movimento Compartilhado).
  4. Na caixa de diálogo de Fluxo de Movimento Compartilhado, clique no botão Novo.

    Ele cria um novo fluxo de movimento compartilhado e atribui um nome padrão. É possível alterar o nome, se quiser.

    A seguir, carregue um arquivo do fluxo de movimento.

  5. Clique no grupo de Parâmetros botão "Carregar .mfe" e utilize a caixa de diálogo Abrir para carregar um arquivo de fluxo de movimento. Normalmente, isso seria aquele salvo anteriormente no procedimento.

    A seguir, especifique os bípedes que irão compartilhar este fluxo de movimento.

  6. No grupo de Parâmetros, clique no botão Adicionar e utilize a caixa de diálogo Selecionar para especificar os bípedes que irão compartilhar o fluxo de movimento.

    Para sua conveniência, a caixa de diálogo Selecionar mostra somente o centro dos objetos de massa para os bípedes na cena.

    Depois de clicar no botão Selecionar, os bípedes aparecem na caixa de diálogo, na lista em "Bípedes que compartilham este fluxo de movimento."

  7. Para compartilhar corretamente um fluxo de movimento, as pernas dos bípedes devem ter a mesma dimensão. Se algum dos bípedes tiver dimensão diferente daquela inicial, aparece um alerta e, em seguida, ao clicar no botão OK na caixa de alerta, os bípedes com escalas diferentes são marcados como tal na lista. Neste ponto, é possível selecionar um dos bípedes na lista e, a seguir, clique no botão de Definir Escala do Fluxo de Movimento Compartilhado para corresponder à escala dos outros naquele bípede. Ou é possível clicar em um dos botões de Redefinir a Escala Errada para redimensionar os bípedes que estão com escala errada ou apenas suas pernas. Certifique-se de tirar uma dessas medidas antes de continuar.

    Mais uma etapa na caixa de diálogo de Fluxo de Movimento Compartilhado é necessária: deve-se ativar o modo de Fluxo de Movimento para todos os bípedes que compartilham o fluxo de movimento. Um botão especial na caixa de diálogo permite executar essa ação em uma etapa.

  8. Clique em (Colocar vários bípedes no fluxo de movimento).

    Isso ativa o modo de Fluxo de Movimento para todos os bípedes que compartilham o fluxo de movimento.

  9. Clique no botão OK para sair da caixa de diálogo.

Para deslocar os delegados e testar a simulação:

    Os bípedes controlados por delegados podem começar a animação com o primeiro clipe do seus scripts de fluxo de movimento, se existir, ou com um clipe de movimento aleatório. Mas quando se carrega um arquivo de fluxo de movimento na caixa de diálogo de Fluxo de Movimento Compartilhado, todo script no arquivo é ignorado. Portanto, os bípedes associados ao delegado que usam o fluxo de movimento em uma simulação de multidões não resolvida não têm nenhum scripts e é preciso especificar que utilizam o clipe de início aleatório definido no fluxo de movimento. Isto é feito através dos delegados.

  1. Utilize a caixa de diálogo Editar Vários Delegados grupo de Bípedes para especificar o Clipe de Início Aleatório para todos os delegados.

    Resolver a simulação.

  2. Selecione o objeto de Multidões e vá para o painel Modificar.
  3. No implementação de Resolução, defina o quadro Finalizar Resolução.
  4. Clique em Resolver para executar a simulação.

    A multidão soluciona a simulação.

  5. Verifique a simulação resolvida ao arrastar o controle deslizante do quadro e/ou reproduzir a animação.

Para afinar a simulação:

    Há boas chances de que seja necessário fazer ajustes. É possível solucionar problemas de diversas maneiras: alterar a configuração de comportamento e/ou o fluxo de movimento, alterar os parâmetros de delegado e assim por diante.

    Se achar que os bípedes estão colidindo ou interpenetrando, é possível aproveitar os recursos de Reversão e Prioridades especiais de Multidão. Na verdade, é altamente recomendado usar ambas as opções para a maioria das simulações de multidão/bípede.

  1. Utilize os controles da implementação Prioridade para atribuir diferentes prioridades a seus delegados. Normalmente, os delegados que estão na cabeça da multidão devm ter as prioridades mais altas(isto é, as menores configurações de Prioridade).
  2. Na implementação Resolver grupo de Bípedes, ative Bípede/Delegados Somente, ative Usar Prioridades e, em seguida, ative Reversão. Se tiver sido resolvido anteriormente, é recomendável ativar também Excluir as Chaves antes de Resolver.

    Agora, ao solucionar a simulação, a Multidão resolve para um bípede/delegado por vez, começando com o bípede/delegado de menor prioridade. Como soluciona para cada bípede/delegado, busca colisões e, quando ocorrem, volta pa solução para o final do clipe anterior e, se necessário, os clipes anteriores, e, em seguida, tenta caminhos diferentes para o gráfico de fluxo de movimento. Este método pode levar mais tempo, por isso, a Reversão é desativada por padrão, mas, frequentemente, é a melhor maneira de solucionar os problemas com a colisão de bípedes.