matrix hierarchies
Hi, i''m having trouble limiting the rotation of joints in a skeletal animation system. If I just decompose the local joint matrix, I get the euler angles around the parent''s axis''. But rotation limits are given around the joint''s relaxed orientation (that is the initial pose). The final matrix of a joint is created as follows:
this->matrix = (this->relaxed * this->offset) * parent->matrix;
(this->offset is the matrix that is animated)
So basically what i want is the euler angles that this->offset rotates about the axis'' of this->relaxed. As I said, just decomposing this->offset gives me the angles around parent->matrix... Can anybody help me here?
Thanks,
Dirk
August 18, 2001 09:28 AM
Hmm, I had a similar problem with my skeleton animator, but:
> this->matrix = (this->relaxed * this->offset) * parent->matrix
shouldn''t it be:
this->matrix = parent->matrix * this->offset
(in OpenGL order) ?
Transform a joint by it''s offset from the original relaxed pose and then apply the parent matrix. Why remultiply this->relaxed ? Your mesh that is to be deformed is already in the relaxed position (geometrically).
> this->matrix = (this->relaxed * this->offset) * parent->matrix
shouldn''t it be:
this->matrix = parent->matrix * this->offset
(in OpenGL order) ?
Transform a joint by it''s offset from the original relaxed pose and then apply the parent matrix. Why remultiply this->relaxed ? Your mesh that is to be deformed is already in the relaxed position (geometrically).
This topic is closed to new replies.
Advertisement
Popular Topics
Advertisement
Recommended Tutorials
Advertisement