This topic is now archived and is closed to further replies.

matrix hierarchies

This topic is 5996 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

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

Share this post

Link to post
Share on other sites
Guest Anonymous Poster
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).

Share this post

Link to post
Share on other sites