Teste de colisão de mParticles

O teste de colisão mParticles é similar ao teste de colisão padrão, mas em vez de permitir colisões entre partículas e flambagens de espaço do Defletor, ele permite colisões entre partículas e objetos padrão aplicados com o modificador PFlow de forma de colisão (WSM). O uso é similar ao teste de colisão, mas alguns detalhes são diferentes devido à natureza da simulação física e à configuração do MassFX.

Dica: Sempre coloque um teste mParticles abaixo do operador mParticles universal em um evento. Caso contrário, o teste não poderá recuperar as informações de simulação apropriadas após uma etapa de integração da simulação. O posicionamento impróprio de um teste de mParticles resulta na desativação da simulação do mParticles universal. Uma mensagem relativa a isso é registrada no ouvinte do MAXScript e também aparece na barra de status, na parte inferior da interface do 3ds Max.

Procedimento

Este procedimento descreve um uso simples da Colisão de mParticles para simular um encontro no espaço exterior entre uma esfera e um monte de blocos, dentro de uma caixa.

  1. Abra a vista Partículas (pressione 6) e arraste um Fluxo do mParticles do depósito para a janela.

    O Fluxo do mParticles oferece uma maneira fácil de criar um fluxo simples com todos os elementos necessários para a simulação física.

    A viewport Perspectiva agora mostra uma matriz cúbica de blocos (partículas cúbicas criadas pela Grade de nascimento) e o ícone de Ajuda do mParticles World.

  2. No Evento 001, clique no operador mParticles World; na implementação mParticles World, clique no botão =>.

    A Ajuda do mParticles universal será selecionada e exibirá seus parâmetros no painel Modificar.

  3. Na parte superior da implementação Parâmetros, desative Aplicar gravidade.
  4. No viewport Perspectiva, adicione uma caixa primitiva que englobe os blocos com espaço adicional. Um cubo de 150 unidades em um dos lados deve funcionar bem. Centralize a caixa nos blocos.
  5. Converta a caixa em um polígono editável, selecione e exclua o polígono superior e adicione um modificador Casca. Crie um ângulo com a vista de maneira que seja possível ver a parte de baixo da caixa. Ela deve se parecer com a seguinte ilustração:


  6. No viewport Frontal, adicione uma esfera de raio = 20 acima do lado direito da caixa. O viewport Perspectiva agora deve ter esta aparência:


  7. Vá até o quadro 30, ative a Chave automática e, no viewport Frontal, posicione a esfera no canto inferior esquerdo da caixa, como mostrado:


  8. Reproduza ou ignore a animação. A esfera deve fazer interseção com os blocos enquanto rola. Caso contrário, ajuste o caminho.
  9. Volte para o quadro 0 e desative a Chave automática.
  10. Selecione a esfera e aplique o modificador PFlow de forma de colisão (WSM) .
  11. Na implementação Parâmetros do modificador, defina a Forma como esfera e, em seguida, clique em Ativar.
  12. Selecione a caixa e aplique o modificador PFlow de forma de colisão (WSM). Verifique se a opção de Forma está definida como Geometria, o padrão. Se não, selecione Geometria.
  13. Clique em Ativar.

    Graças ao modificador de forma de colisão, a caixa e a esfera agora estão equipadas para colidir com as partículas dentro da caixa.

  14. Na vista Partículas, arraste um teste de colisão mParticles para a parte inferior do Evento 001. Clique no teste para que os parâmetros dele apareçam na vista Partículas. Em seguida, na lista Defletores (vazia no momento), clique em Por lista.

    Abra a caixa de diálogo Selecionar defletores, que inclui somente os objetos qualificados para agir como defletores na colisão de mParticles: a caixa e a esfera.

  15. Realce as entradas da caixa e da esfera na lista (Ctrl + A é uma forma) e, em seguida, clique em Selecionar.

    A caixa e a esfera aparecem na lista Defletores.

    Como neste exemplo você não passará as partículas para outro evento, não precisará da opção Testar verdadeiro se o valor da partícula ou qualquer uma de suas opções.

  16. Reproduza a animação.

    A esfera colide na matriz de partículas, fazendo com que dispersem e quiquem umas contra as outras e dentro da caixa. Se você estender o comprimento da animação para cerca de 300 quadros, poderá ver quando elas começarem a voar fora da abertura, na parte superior da caixa.



  17. Dica: Se você deseja que a esfera quique dentro da caixa também, exclua a geometria da esfera e recrie a esfera como uma partícula esférica criada com um operador Fluxo de nascimento em um evento à parte conectado ao evento global. Depois, direcione o ícone do fluxo de nascimento na matriz de partículas. Não deixe de incluir o operador Forma de mParticles e uma instância do operador mParticles universal no evento do segundo nascimento. A inserção do operador mParticles universal faz o teste de colisão mParticles global para ambos os eventos, de modo que não é necessário criar uma instância do teste também.

Interface



Defletores
Relaciona os objetos que não são partículas e que atuam como defletores na simulação MassFX. Essa é a principal diferença entre o teste de colisão mParticles e o teste de colisão padrão: em vez de usar a flambagem de espaço do tipo Defletor, você especifica objetos da geometria para os quais o modificador PFlow de colisão de forma (WSM) tenha sido aplicado. A lista Defletores pode conter somente esses objetos. Se um objeto de geometria não for modificado com a Forma de colisão PFlow, não poderá ser considerado como um defletor para o teste de colisão mParticles.

Uma outra diferença importante é que a colisão mParticles simula as colisões de todas as partículas na simulação definida por um operador mParticles universal, ou seja, partículas em todos os eventos com um operador mParticles universal associado ao mesmo driver mParticles universal. Independentemente do posicionamento do teste de colisão mParticles em um determinado evento, se o teste estiver no mesmo evento que um operador mParticles universal, a colisão será feita para todas as partículas que estiverem sob controle no driver do operador do mParticles universal.

Adicionar/Por lista/Remover
Para adicionar um objeto modificado com PFlow de forma de colisão à simulação, clique em Adicionar e, em seguida, selecione o objeto. Para adicionar diversos ao mesmo tempo, utilize Por lista. Para remover um objeto, realce o nome na lista e clique em Remover.
=>
Para selecionar um objeto atribuído na colisão de mParticles, realce-o na lista e clique neste botão. O objeto será selecionado na cena e tornará mais fácil o acesso aos parâmetros de objeto.

Grupo Testar verdadeiro se o valor da partícula

A função principal do teste de colisão mParticles é definir os objetos da geometria da cena com os quais as partículas na simulação colidem. Como o operador funciona como um teste, também é possível utilizá-la para redirecionar partículas para o próximo evento na colisão. O trabalho de rastrear quais partículas colidem e quando ocorrem as colisões requer recursos adicionais de CPU, portanto, se você não precisa do teste para redirecionamento (e se não tem um fio que sai do teste), desative Testar verdadeiro se o valor da partícula

Além disso, se Testar verdadeiro se o valor da partícula estiver desativado, não importa em qual evento reside o teste, já que ele funciona em um nível global de simulação. Se Testar verdadeiro se o valor da partícula estiver ativado, todas as colisões de partículas no evento atual com o defletor serão contadas e elas serão usadas para redirecionar partículas para o evento seguinte no momento certo, como especificado por outros parâmetros neste grupo.

As opções e os controles Colidir, For lenta após colisões, For rápida após colisões e Colidiu várias vezes são similares àqueles no teste de colisão padrão, com algumas diferenças:

Operador Report To Data
Ao usar as ferramentas avançadas de manipulação de dados, ative esta opção se você precisar que os dados do número de colisões sejam utilizados por um operador de dados. É possível utilizar o suboperador Input mParticle de entrada para recuperar esses dados em um operador de dados.

Disponível quando a opção Testar verdadeiro se partícula está ativada. Normalmente, você usa essa opção quando o teste não está vinculado a nenhum evento seguinte.

Contagem de aditivos
Quando ativado, os dados reportados representam o número total de colisões de uma partícula enquanto ela estava presente no evento atual. Quando desativado, o teste informa somente o número de colisões de uma partícula durante a última etapa de integração.

Disponível somente quando Relatório para operador de dados está ativado.

Grupo de colisão
Utilize essa configuração para exclusões de colisão, como explicado no tópico Ajuda do mParticles universal.