 |
 |
TÍTULO
: SIMULANDO DINAMICS NUMA CADEIA DE IK |
 |

Arquivos .MAX de exemplo desse tutorial : 
|
 |
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.
|
 |