BVH=>Egg, Another Question about Matrix Order

Return to Pipeline

BVH=>Egg, Another Question about Matrix Order

Postby Manakel the Questionner » Wed Feb 02, 2005 7:07 am

Another question concerning the way Panda calculate the joint matrix from its parent one
Are parent matrix post multplied or pre mulltiplied

I mean if Parent ranges from 0 to N (N being the lower level in hierarchy)
and Mn is transform matrix for joint n relative to parent n-1.
Does panda do:

Mn=M0*M1*M2*M3...Mn-1
or Mn=Mn-1*Mn-2*...M0

I ask to know if conversion is required from BVH exported file
Manakel the Questionner
 

Postby drwr » Wed Feb 02, 2005 6:44 pm

The net transform of each node is derived by premultiplying the parent's net transform with the node's local transform.

That is, Mn = Mn-1*Mn-2*...M0, where M0 is the root transform.

This gives the intuitive composition of transforms, and provides for standard forward kinematics. It is not likely that an animation file format would use the opposite convention, which is not very useful, so I would be suprised if you find you have to make a conversion for this.

Note that transform matrices in Panda are represented row-major, which does reverse the meaning of premultiply and postmultiply from a column-major representation.

David
drwr
 
Posts: 11425
Joined: Fri Feb 13, 2004 12:42 pm
Location: Glendale, CA

Postby StillManakel » Thu Feb 03, 2005 6:16 pm

Hmm Thks a lot.
Another question:
" A table is a set of animated values for joints. A tree of tables
with the same structure as the corresponding tree of joints must be
defined for each character to be animated. "

does this means that tables hierarchy (defined by { and }) must
match skeleton hierarchy or matching tables names with joint names is enough?

(hoping hoping...)
StillManakel
 

Postby drwr » Thu Feb 03, 2005 8:31 pm

The tables hierarchy should exactly match the skeleton hierarchy.

David
drwr
 
Posts: 11425
Joined: Fri Feb 13, 2004 12:42 pm
Location: Glendale, CA

Postby drwr » Fri Feb 04, 2005 8:13 am

FYI, you can examine the panda-walk.egg file in the models directory for an example of what the animation file ought to look like. This is designed to play on the panda.egg model file in the same directory.

You can run them with a command like this:

Code: Select all
pview panda.egg panda-walk.egg


David
drwr
 
Posts: 11425
Joined: Fri Feb 13, 2004 12:42 pm
Location: Glendale, CA


Return to Pipeline

Who is online

Users browsing this forum: Google [Bot] and 0 guests