Apologies if this isn't the right place for this,
I've tried a few online forums, including Discreet's Sparks website without much
response. Here's my issue.
For the rotations on my animation keys I'm using
the quats defined by Max. The only issue that I had to overcome with that was
that my engine understands y to be up, whereas Max understands z to be up. This
was easily solved by swapping columns 2 & 3 when I converted animation keys
into matrices before sending to the skinning routine (thereby swapping the y/z
axes -- effectively the animation engine works in "Max's space").
Now that I'm trying to do some simple IK
stuff, I'm having problems. Since all of the rotation keys that I use are
considered to be in your parent's bone space, I need to calculate the rotation
for a bone in Max's z-up quat space. I'm trying to do a simple CCD system, and I
thought it would be sufficient to simply swizzle y/z of the axis of rotation
when I build my quats, but that doesn't seem to be working -- I'm getting
results that look just plain wrong.
Obviously I'm missing something obvious, can
somebody help me out here?