Menu
Tutoriais de pintura 2D, etc...
Tutoriais de 3DMAX.
Galeria
Gente talentosa.
Entrevistas
Artigos  sobre CG

Meus sites favoritos
Anuncie - Advertise
Home
 
  Tutoriais 3D
Go Back

  TÍTULO : SIMULANDO DINAMICS NUMA CADEIA DE IK
  AUTOR : LEO SANTOS


Arquivos .MAX de exemplo desse tutorial : ZIP-40K
 PASSO 1
   Antes de qualquer coisa, para proseseguirmos neste tutorial temos que saber o que é um "spring controller" (você sabe o que é um controller, não sabe?).

   Bem, associando-se um spring como controller de posição a um objeto, você pode animá-lo normalmente, mas ele irá apresentar um movimento secundário oscilante, que depende de parâmetros como massa e tensão. Todo o segredo de se usar corretamente este controller está no correto ajuste desses parâmetros.

   Na parte anterior deste tutorial (cinemática), vimos como criar uma cadeia de bones com ik. Vamos fazer o mesmo agora, só que teremos um solver por bone dessa vez. Crie os bones na vista lateral, da seguinte maneira:

   Agora iremos criar os solvers. Como já sabemos, precisamos informar ao solver o início e o final da cadeia de IK.

   Sendo assim, comece a criar os solvers pelo primeiro bone. Só que quem está na ponta desse bone é o segundo, então selecione-o, vá em "animation/IK Solvers/HI solver" e clique em seguida no bone base.

   Pronto, a primeira cadeia está criada. Seguiremos agora criando uma cadeia para cada bone.




   Prossiga sempre selecionando o bone terminador, o solver desejado ( IK HI ) e o bone base.
   No final, selecione o pequeno bone 05 e crie um solver até o bone 04, como mostra a figura.

   Teremos, ao final, quatro solvers de IK.

  
Agora vem o truque: cada solver receberá um controller de posição "spring".

   Vá agora no painel "
create/helpers" e crie um "point" logo acima do último bone.


   Linke os solvers de baixo para cima, até o point. Linke também o bone01 no point, de acordo com a hierarquia abaixo:


   Repare que a base de toda a hierarquia é o point. Se você movê-lo agora, todo o resto deve ir junto, obedientemente. Se isto não ocorrer, confira os links.Agora iremos associar os controllers aos solvers.
   É fácil, basta selecionar o solver e ir no painel "
Motion/assign controller".


   Selecione o controller de posição e clique no botão assign controller, aquele com uma seta, logo acima dos controllers.


   Selecione o controller "spring". Uma janela de propriedades irá surgir na sua tela. O ajuste correto destas propriedades irá resultar no comportamento desejado do solver.

   Os valores que eu usei no arquivo de exemplo são os seguintes:

IkChain 01

Mass = 50
Drag = 1.2
Spring tension = 1
Spring dampening = 0.5

IkChain 02

Mass = 100
Drag = 1.3
Spring tension = 1
Spring dampening = 0.5

IkChain 03

Mass = 200
Drag = 1.3
Spring tension = 1
Spring dampening = 0.5

IkChain 04

Mass = 500
Drag = 2
Spring tension = 1
Spring dampening = 0.5


   Altere à vontade esses valores e verifique o resultado.


   O ponto alto desse setup é que você não está impedido de animar manualmente os solvers, para fazer correções e deixar a animação como você quiser.

   A desvantagem é que não há uma detecção automática de colisão, e você terá que evitar que os bones atravessem objetos próximos manualmente.