-
March 10th, 2010, 05:59 AM
#1
Basic Orientation Matrix Question
Hi all,
I am the author of bvhacker, a free animation application (see here: www.bvhacker.com)
I'm currently working on a new release, and am trying to change the orientation of bones in a bvh animation file. My problem is this:
I have a bvh file that has it's arms aligned down the y-axis. I need to convert it so that it's arms are aligned along the x-axis.
Or, put another way, when all joint's rotations are set to zero, the figure's arms are by it's sides. I need the figure's arms to be outstreched horizontally when zeroed out.
When I first encountered the problem I tried the naive solutions - e.g. just rotating the arms through 90 degrees. Of course, this didn't work well!
I've researched this as far as I can on the web. The solution *appears* to be in changing the arm bones initial translations from 0,L,0 to L,0,0 (where L represents the length of the arm) and then multiplying all my XYZ rotation data values in turn, each rotation value represented by a 4-element vector (where w=1), by a 4x4 'orientation matrix'. I'm fairly comfortable implementing this in code, but I have no idea of the values that should go into the orientation matrix, other than as follows ('u' is for unknown value)
u u u 0
u u u 0
u u u 0
0 0 0 1
I did study matrix transformations at uni, but it was a long time ago now, and I didn't get a really good grasp on the subject at the time! Can anyone help?
Cheers,
:-Davedub
Tags for this Thread
Posting Permissions
- You may not post new threads
- You may not post replies
- You may not post attachments
- You may not edit your posts
-
Forum Rules
|
Click Here to Expand Forum to Full Width
|