locked
How to create a kinect compatible skeleton RRS feed

  • Question

  • I want to create a 100% kinect-compatible skeleton in 3ds max, then I will skin it on a simple character to test rotations. But in the kinect sdk v1.5 documentation, the information about orientations is not clear. The avateering sample in the sdk retargets all of the bones of the dude model and applies many constraints which makes it hard to understand how to simply rotate a character limb. I dont want to retarget any bones, i want it to perfectly work with NUI Skeleton. 

    For example, I want to rotate the avatar's left shoulder like this:

    Model.Bones["LeftShoulder"].Rotation = skeleton.BoneOrientations[JointType.ShoulderLeft].HierarchicalRotation.Matrix

    So I want to know:

    1. Which default pose does NUI Skeleton use?  T pose or A pose? (I mean the pose which all bone orientations are zero or identity matrix)
    2. How are the default axes defined in that default pose? I will use Hierarchical rotations, so how should I build the skeleton bones? As shown below? It is a picture from msdn, it shows only 3 joints, but I want to know the axes for all joints. After I make sure it works as intended, i will export it to fbx and use it in XNA. I need a similiar picture like the one below which shows me all the joints in default pose together with their axis directions. For example, this guy's arm is down, so his shoulder rotation around Z axis -90 or zero?




    So how can I create a perfect NUI Skeleton in 3ds max? Biped and CAT doesnt work because they put some default rotations in bones which cant be reset, for example the pelvis bone is always -180 degrees rotated in the X axis which is a bad thing because it changes the bone's local axes in XNA, thus not compatible with NUI Skeleton joints and requires retargeting. So I will create manual bones but I need some guide.

     

    Friday, May 25, 2012 5:55 PM

All replies

  • Take a look at akira's Kmotion and ask him to update source code to v1.5 but I will probably try updating his source too. He already got it working with transferring the skeleton from kinect sdk into one for use inside of 3ds max if your good at programming blender please modify his code to include blender and upload somewhere. Just take his code and I think you can use it by readding the microsoft.kinect reference except the v1.5 in the program but I will have to see when I look at it again.

    Once you eliminate the impossible, whatever remains, no matter how improbable, must be the truth. - "Sherlock holmes" "speak softly and carry a big stick" - theodore roosevelt. Fear leads to anger, anger leads to hate, hate leads to suffering - Yoda. Blog - http://jefferycarlsonblog.blogspot.com/


    • Edited by The Thinker Tuesday, May 29, 2012 7:58 PM
    • Proposed as answer by The Thinker Tuesday, May 29, 2012 7:58 PM
    Tuesday, May 29, 2012 7:56 PM
  • link to kmotion:

    http://social.msdn.microsoft.com/Forums/en-US/kinectsdk/thread/2bfff4a4-0d2d-40a3-ae65-8299f65bec8c


    Once you eliminate the impossible, whatever remains, no matter how improbable, must be the truth. - "Sherlock holmes" "speak softly and carry a big stick" - theodore roosevelt. Fear leads to anger, anger leads to hate, hate leads to suffering - Yoda. Blog - http://jefferycarlsonblog.blogspot.com/

    Tuesday, May 29, 2012 8:01 PM
  • Hi, I was wondering if you found the answer to your question of what is the zero-degree bone orientation pose in terms of the data returned by HierarchicalRotation? Thanks
    Thursday, June 14, 2012 5:11 PM
  •   i am also suffering from this problem .

     hope some guys can help to answer this question.

    Thursday, June 28, 2012 7:48 AM