S7.A1.

 

5.1. Soft Body.

Abril 29, 2012

 

Como o nome indica, Soft Body é utilizado para simular a dinâmica de corpos deformáveis.

Para utilizar o simulador Soft Body, seleccione um objecto do tipo

Mesh,
Curve,
Surface,
• ou Lattice,

isto é, um objecto que contenha vértices ou pontos de controle, active o contexto Physics da janela de propriedades, e pressione o botão Soft Body.

No texto que se segue, por comodidade de linguagem, o objecto é considerado como sendo do tipo mesh.

A simulação Soft Body trabalha sobre a malha base, isto é, a existente no instante inicial, não sendo eliminados ou acrescentados quaisquer vértices.

As arestas existentes entres os vértices deixam de ser considerados elementos de comprimento e posição relativa fixa, passando a ser consideradas molas que ficam sujeitas às forças exercidas sobre os vértices.

Na configuração padrão a única força existente em cena é a força da gravidade, mas outras poderão ser criadas, activando o botão Force Field do contexto Physics da janela de propriedades.

A dinâmica do corpo deformável resulta do cálculo, atendendo às leis de Newton, da acção das forças presentes em cena sobre cada um dos vértices da malha, ou seja:

• Na ausência de uma força aplicada, um vértice permanecerá imóvel, ou continuará o seu movimento em linha recta com velocidade constante.
• Existindo uma força aplicada, a aceleração de um vértice será tanto maior quanto maior for a força e menor a massa dos vértice.
• Por último, a cada acção corresponderá uma reacção igual e em sentido contrário.

5.1.1. Painéis.


5.1.1.1. Soft Body.


Object:

Friction: Permite simular a existência de uma força de fricção entre o corpo deformável e o meio em que está inserido.



Mass: Massa de cada um dos vértices. Na configuração padrão todos os vértices da malha têm a mesma massa.

Mass Vertex Group: É possível alterar a massa de cada um dos vértices, recorrendo ao contexto Weight Paint da janela 3D. Se tal for feito, é criado automaticamente um grupo de vértices, como pode ser verificado no painel Vertex Groups do contexto Object Data da janela de propriedades. O nome desse grupo pode então ser seleccionado na presente célula, permitindo que cada um dos vértices da malha tenha uma dinâmica diferenciada em função da sua massa.

Simulation:

Speed: Permite alterar a velocidade da simulação, que é imposta pelo valor relativo de Frame Range e Frame Rate, especificados no painel Dimensions do contexto Render da janela de propriedades.
De outro ponto de vista, se preferir, e considerando que o tempo da animação corresponde ao tempo real (da simulação), permite estabelecer a dimensão, em metros, de uma UB do espaço 3D.

5.1.1.2. Soft Body Goal.


Na configuração padrão o painel Soft Body Goal encontra-se activo, pelo que cada um dos vértices da malha base tem como alvo a sua própria posição inicial.

Ou seja, cada vértice, para além de estar sujeito às restantes forças existentes em cena, está sujeito a uma força de atracão à sua posição inicial, como se a ele estivesse ligado por uma mola.

Os parâmetros do painel permitem configurar a força existente entre os vértices da malha base e os vértices alvo..

Vertex Group: Nome do grupo de vértices alvo.

Quando especificado, os vértices alvo deixam de ser constituídos por todos os vértices da malha base, restringindo-se aos vértices que constam do grupo.
Recorrendo ao contexto Weight Paint da janela 3D, cada um dos vértices da malha alvo definida pelo grupo poderá exercer uma diferente força de atracção sobre o respectivo vértice da malha base.
Todos os outros vértices da malha base ficarão apenas sujeitos às restantes forças existentes em cena, não procurando atingir o alvo.

Goal Strengths:

Default: Caso não seja especificado um Vertex Group, este parâmetro define a força de atracção ao vértice alvo, idêntica para todos os vértice da malha. Para o valor 1.0 os vértices serão tão fortemente atraídos que não modificarão a sua posição, ou seja, a malha não se comportará como um corpo deformável, e para um valor 0.0 não existirá qualquer força de atracção entre os vértices da malha base e os vértices alvo. Caso seja especificado um Vertex Group, este parâmetro não tem qualquer influência.

Minimum/Maximum: Caso o grupo especificado na célula Vertex Group tenha sido definido no contexto Weight Paint, resultando daí que os vértices alvo atraem os vértices da malha base com forças de diferentes intensidades, os parâmetros Minimum/Maximum estabelecem a diferença relativa entre a força de menor atracão, na configuração padrão, associada aos vértices a azul, e a força de maior atração, na configuração padrão, associada aos vértices a vermelho.

Goal Settings:

Stiffness: Rigidez estrutural da mola de ligação dos vértices da malha base aos vértices da malha alvo.
A valores baixos do parâmetro corresponde uma ligação mais flexível, e, consequentemente, oscilações mais pronunciadas, e a valores elevados um corpo deformável com maior rigidez de deformação relativamente à malha alvo.

Damping: Coeficiente de amortecimento do movimento induzido pela ligação dos vértices da malha base aos vértices da malha alvo.



5.1.1.3. Soft Body Edges.


Na configuração padrão o painel Soft Body Edges encontra-se activo.

Nele são especificadas as características das forças entre cada um dos vértices e os vértices que lhe são adjacente, isto é, entre os vértices que partilham uma aresta, arestas estas que deixam de ser consideradas como segmentos rígidos, de comprimento fixo, e passam a funcionar como se fossem molas.

Springs:

Pull: Coeficiente de resistência à expansão da aresta (mola) entre cada um dos vértices e os vértices adjacentes. Quanto mais baixo o seu valor mais flexível será o corpo deformável.




Push: Coeficiente de resistência à compressão da aresta (mola) entre cada um dos vértices e os vértices adjacentes. Quanto mais baixo o seu valor mais flexível será o corpo deformável.




Damp: Coeficiente de amortecimento das forças existentes entre os vértices da malha base.






Plastic: Percentagem de deformação permanente que a malha base sofre quando entra em contacto com obstáculos.






Bending: Coeficiente de rigidez das ligações virtuais entre cada um dos vértices e os vértices ligados ao vértices que lhe são adjacentes, evita o colapso do corpo deformável. Quanto maior o seu valor menos sujeito a torções será o corpo deformável.


Length: Se diferente de 0.0, o coeficiente exprime, a percentagem de não alteração da dimensão de cada uma das arestas, sendo que 100.0 significa que as arestas do corpo deformável mantêm a sua dimensão inicial.



Springs: Nome do grupo de vértices que determina a rigidez estrutural das molas entre os vértices adjacentes da malha base. Permite alterar a uniformidade da caracterização das forças actuantes sobre cada vértice.

Stiff Quads: Quando activo, cria vértices (molas) virtuais na diagonal das faces com 4 vértices (Quads), evitando que a face colapse em resultado de colisões com obstáculos.

Shear: Coeficiente de rigidez da mola virtual criada sobre a diagonal de cada uma das faces Quad.


Aerodynamics: Simula a influência/resistência do meio circundante ao movimento do corpo deformável.

Simple/Lift Force: Tipo de força aplicada ao corpo deformável, isto é, sobre cada umas das suas arestas, caso este se encontre em movimento. Força segundo a direcção do movimento, de resistência, ou perpendicular ao movimento, de sustentação.

Factor: Coeficiente de intensidade da força.

Collision: Activando Edge e/ou Face , passa a ser tido em conta no cálculo de colisões se as aresta, ou as faces, respectivamente, e não apenas os vértices da malha base, interceptam os objectos, definidos como obstáculo, em cena.
A activação destes parâmetros torna o cálculo de colisões bastante mais fiável, mas à custa de um tempo de simulação muito mais elevado. É de equacionar, em alternativa à activação destes parâmetros, o aumento do número de vértices da malha base do corpo deformável.

5.1.1.4. Soft Body Self Colision.


Quando activo, permite o controle do modo como são calculadas as colisões, entre si, dos vértices da malha base.

Cada um dos vértices constitui o centro de uma esfera virtual elástica que serve de base ao cálculo da interpenetração da malha base, constituindo um espaço privado de cada um dos vértices, isto é, nenhum outro vértice poderá entrar a esfera virtual.

Collision Ball Size Calculation: Cinco diferentes opções de cálculo do raio da esfera virtual, com base no parâmetro Ball Size, e na distância entre os vértices.

Ball: .

Size : Raio da esfera virtual, em BU.

Stiffness : Factor de elasticidade da esfera virtual.

Dampening : Determina o modo como reagem os vértice que se aproximam da esfera virtual de um outro vértice. Para valores baixos de Dampening os vértices abrandam a velocidade, e para valores elevados de Dampening os vértices são repelidos.

5.1.1.5. Soft Body Solver.


Os parâmetros do painel Soft Body Solver permitem o controle da qualidade da simulação.

Step Size:

Min Step : Número mínimo de passos de simulação por frame.

Max Step : Número máximo de passos de simulação por frame.

Auto Step : Número de passos de simulação por frame automático.

Error Limit : Quando menor o valor deste parâmetro melhor será a qualidade da simulação, e, inerentemente, maior será o tempo de simulação.

Helpers:

Choke : O parâmetro tem influência no cálculo de colisões do corpo deformável com outros objectos. Valores elevados tornam a simulação mais estável.

Fuzzy : O parâmetro tem influência no cálculo de colisões do corpo deformável com outros objectos. Valores elevados tornam a simulação mais rápida mas menos precisa.

5.1.1.6. Soft Body Cache.


O painel Soft Body Cache permite a gestão dos dados da simulação, sendo idêntico ao painel Smoke Cache.
Veja aí a funcionalidade do conjunto de botões e parâmetros.







5.1.1.7. Soft Body Field Weights.


O painel Soft Body Field Weights permite controlar a influência que as diversas forças eventualmente existentes em cena exercem sobre a malha Soft Body.

Na configuração padrão, a gravidade é a única força previamente definida como não nula.




5.1.2. Soft Body Tutorial 1.


5.1.2.1. Modelação.


Abra o Blender.

Seleccione o cubo padão, [RMB]. Entre em modo edição, [Tab]. Subdivida-o 3 vezes, [W] > Subdivide > Number of Cuts > 3.

No contexto Object Modifiers da janela de propriedades, associe um modificador Subdivision Surface de nível 3.

Sai de modo edição, [Tab]. Na tabela de propriedades da janela 3D, active Shading Smooth.

Insira um plano. [Shift]+[A] > Mesh > Plane.

Escale-o 20 vezes, [S] > 20.

Na tabela de propriedades da janela 3D, active Shading Smooth.

Entre em modo edição, [Tab]. Subdivida-o 3 vezes, [W] > Subdivide > Number of Cuts > 3.

No contexto Object Modifiers da janela de propriedades, associe um modificador Subdivision Surface de nível 2.

Seleccionando sucessivamente os diversos contornos, dê-lhe, aproximadamente, a forma que se mostra na figura. Sai de modo edição, [Tab].

5.1.2.2. Simulação.


Seleccione o plano, [RMB].

Active o contexto Physics da janela de propriedades. Pressione o botão Collision. Mantenha os valores padrão dos diversos parâmetros do painel Collision.













Seleccione o cubo, [RMB].

Active o contexto Physics da janela de propriedades. Pressione o botão Collision. Mantenha os valores padrão dos diversos parâmetros do painel Collision.













Desactive Soft Body Goal.






No painel Soft Body Edges, especifique Bending : 0.2, active Stiff Quads, e especifique Shear : 0.5.






Active Soft Body Self Collision. Mantenha os valores padrão dos diversos parâmetros do painel.




No painel Soft Body Cache, especifique Cache : 1, e active Disk Cache.











Seleccione o cubo, [RMB], duplique-o, [Shift]+[D], desloque a cópia ligeiramente para cima, [G], e rode-a, [R].

Repita mais três vezes o procedimento anterior, ficando assim com um total de quatro cubos dispostos, aproximadamente, como se mostra na figura.






Calcule e registe em disco os dados da simulação, pressionando o botão Bake do painel Soft Body Cache.



5.1.2.3 Materiais e Iluminação.


Seleccione o cubo, [RMB], e active o contexto Materials da janela de propriedades.

No painel Diffuse, especifique a cor difusa [1.0 0.0 0.0], e Intensity 0.1.









No painel Specular, seleccione o modelo de sombreamento Wardlso, e especifique Intensity : 1.0 e Slope : 0.13.


Active o painel Transparency. Seleccione Raytrace, e especifique Alpha :0.0, Fresnel : 0.4, IOR : 1.8, e Filter 0.7.







No painel Shadow, active Receive Transparent.






Seleccione o plano, [RMB] e active o contexto Materials da janela de propriedades. Pressione New de modo a associar um material ao plano.

No painel Specular, especifique Intensity : 0.0.

No painel Shadow, active Receive Transparent.






Active o contexto Textures de modo a associar uma textura ao material do plano. Pressione New, e seleccione Blend.

No painel Colors, active Ramp, Pressine Flip colorband, e especifique a cor da banda 0 como [0.0 0.0 0.0 1.0].



Active o contexto World. Especifique a cor [1.0 1.0 1.0] para Horizon e Zenith.

Active Ambient Occlusion e seleccione Multiply.

Active Indirect Lighting e especifique Bounces : 2.0.

No painel Gather active Approximate.











Active o contexto Render. No painel Dimensions especifique Resolution : 1250/ 1250/ 50% e Frame Rate : 25 fps.







No painel Shading desactive Color Management.




No painel Output especifique o formato vídeo.




Crie o vídeo, [Ctrl]+[F12].