Neste tutorial estarei explicando como simular um vidro quebrável através de um projétil, usando partículas e o modificador Explode. Também, estarei explicando como controlar o tamanho dos cacos de vidro.
Primeiro de tudo, adicione um plano, gire-o em 90° no eixo X e, aplique o modificador Subsurf, do tipo Simple, nível 6.
Após isso, vá ao modo de edição, selecione todas as faces (A), vá para o menu Malha -> Faces -> Convert Quads to Triangles. Isso ajudará as faces se parecerem com cacos de vidro, quando elas se separarem.
Agora vá para a seção Object (F7) -> Particle buttons, e adicione um novo sistema de parículas, do tipo Emitter.
Ajuste Amount (quantidade de partículas) para a quantidade de faces no plano ou um número menor (neste caso, 4096 é a metade, já que houve a transformação de quadrados para triângulos, resultando em 8192 faces), Sta e End para 13 (frame anterior a colisão), Life para o último frame da simulação (neste caso, 250). Na área Physics, em Random, deixe 1.000 e, em AccZ, deixe -9.80 (força da gravidade da Terra). Para dar mais realismo, na mesma área, configure Angular v para Spin. Isso permitirá os cacos de vidro girarem enquanto caem.
Em Visualization, escolha None na lista e clique em Render Emmiter. Isso fará com que as faces se orientem às partículas.
Adicione o modificador Explode, e garanta que ele seja sempre o próximo modificador, depois de ParticleInstance, na pilha (conhecida como Stack). Nesse modificador, selecione Split Edges. Isso dará um melhor resultado, subdividindo as faces durante a simulação.
Adicione outro plano, que será o chão. Em Physics buttons, na área Collision, clique no botão Collision. Dê o valor 0.80 para Damping e Friction. Damping evitará que os cacos fiquem pulando infinitamente e, Friction evitará que fiquem tremendo.
Adicione uma esfera e o ajuste, e ative a colisão, de acordo com os valores das imagens abaixo:
Depois, insira uma chave para Loc (i). Mova para o frame 25, mova a esfera para o lado do plano, no eixo X, e insira outra chave para Loc. Isso equivale a 1 segundo, mas pode variar, dependendo do valor escolhido na seção Scene (F10). Volte para o frame 1.
Inicie a animação (Alt-A). O Plano irá quebrar quando for atingido pela esfera.
Para cacos maiores, use um valor para Amount, inferior ao número de faces no objeto que quebrará. Para manter realismo nos cacos maiores, deve-se usar um valor para Amount, pelo qual a divisão da quantidade de faces pela quantidade de partículas, resulte em um número real (4096 ÷ 27 = 151,703).
A quantidade de cacos será igual a quantidade de partículas, se não houver mais partículas do que faces.
4 comentários:
cara como eu uso esse modificador na game engine ?!
Infelizmente, esse modificador, ainda não é suportado pela game engine; apenas renderizações. Mas você pode improvisar, criando vários cacos e usando a física para simular esse modificador, ou então usando scripts Python.
Belo tutorial. Infelismente, o vidro quebra inteiro em vez de começar pela parte que se chocou com a esfera.
O tutorial foi feito baseando-se em vidros que se quebram por inteiro (temperados), de uma vez só... Entretanto, para aqueles vidros que não se quebram por inteiro (laminados), pode-se usar as partículas do tipo Reactor. Eu farei outro tutorial abordando esse tipo de vidro.
Postar um comentário