Recommended Posts

Hello
Another topic about max sdk ...
I''am working on my animation system and I can get position, rotation and scale keys in TCB, linear and Bezier mode.
For translation (linear and bezier) and rotation (linear) all work perfectly.
But I have some problem to replay the animation when the rotations are in TCB or bezier mode. In this modes I have to use quaternion squad to interpolate between the keys but I doesn''t know how to get the quaternion tangent from max sdk. I try to use D3DX function to generate this tangent but when the rotation are too large (>90°) it''s doesn''t work.
Maybe I use incorectly D3DX so here how I generate tangent with D3DX:
Keyframe Exported from max : Q1 Q2 Q3 Q4 Q5 ....
So when i want to interpolate between Q3 and Q4 I call :
D3DXQuaternionSquadSetup(&A, &B, &C, &Q2, &Q3, &Q4, &Q5);
then I call :
D3DXQuaternionSquad(&Qres, &Q2, &A, &B, &C, t);
The max sdk doc speak about some file called "tcbInterp.cpp" and "interp.cpp" avaible for sparks registered users. But I''am not registered to spark and I think this files will help me a lot.
If someone can post me this files or have an idea to correctly create the tangent it will help me a lot.
Many thanks in advance
AcidKor
foucher.jerome@wanadoo.fr