Written by: Tuesday, January 03, 2012
UPDATE: Check the next blog post for an updated example project.
A while ago we discussed in the Forum how to use the Microsoft Kinect SDK to animate a character model in real-time and how to apply movement constraints (e.g. joint rotation limits). Yesterday our company got a new Kinect device and I figured I might spend the rest of the afternoon trying to write a small XNA sample.
Here is the result: (You can download the source code below the video.)
The sample uses the “Marionette” approach that was discussed in the forum. It uses the ragdoll features of DigitalRune Animation and therefore automatically supports collision detection. The ragdoll should be able to interact with other physics objects (e.g. push a ball) – but I have not tested this yet.
This is my first motion capture attempt using Kinect. It was hacked together in only 4 hours (+1.5h clean-up and commenting) - that means, there is really a lot that should be improved. But it is a good proof-of-concept.
Here you can download this XNA sample project including source code:
>>> Download KinectAnimationSample* <<<
More information can be found in the source code. Have fun!
21 comment(s) so far...
Re: Real-Time Motion Capture using Kinect and XNA Im really intrested in creating something simmilar to this example of yours,but Im really not very familiar with Visual C#. ive downloaded your example to learn how to do that, but i cant debugg the project, i cant see it working.Do you know what should i do to test this project? what should I do to debugg it?i really apreciate your help.
Re: Real-Time Motion Capture using Kinect and XNA
Im really intrested in creating something simmilar to this example of yours,but Im really not very familiar with Visual C#. ive downloaded your example to learn how to do that, but i cant debugg the project, i cant see it working.Do you know what should i do to test this project? what should I do to debugg it?i really apreciate your help.
Re: Real-Time Motion Capture using Kinect and XNA This sample is an advanced example that contains some very difficult topics (skeletal animation, ragdoll physics, etc.). If you don't have experience with these topics or VC#, my best advise is to start slow with simpler samples (e.g. with XNA samples from Microsoft App Hub). For specific questions please visit our support forum.
This sample is an advanced example that contains some very difficult topics (skeletal animation, ragdoll physics, etc.). If you don't have experience with these topics or VC#, my best advise is to start slow with simpler samples (e.g. with XNA samples from Microsoft App Hub). For specific questions please visit our support forum.
Re: Real-Time Motion Capture using Kinect and XNA Hi, seems amazing ,I've downloaded the trial version of digitalRune but, it's alwaysgives me the same problem with all samples "Error loading assembly pipeline Digitalrune.Animation.dll" , please help me with this!
Hi, seems amazing ,I've downloaded the trial version of digitalRune but, it's alwaysgives me the same problem with all samples "Error loading assembly pipeline Digitalrune.Animation.dll" , please help me with this!
Re: Real-Time Motion Capture using Kinect and XNA @Hosam: Did you unblock the downloaded zip file before extracting the files? (See the instructions in the blog article.)
@Hosam: Did you unblock the downloaded zip file before extracting the files? (See the instructions in the blog article.)
Re: Real-Time Motion Capture using Kinect and XNA yes I did , and extracted the files but still the same error , do i need to license key or something like that ?
yes I did , and extracted the files but still the same error , do i need to license key or something like that ?
Re: Real-Time Motion Capture using Kinect and XNA In the trial time (30 days) you don't need a license key. If the trial is expired you would normally see a message in a message box. Please ask in our support forum.
In the trial time (30 days) you don't need a license key. If the trial is expired you would normally see a message in a message box. Please ask in our support forum.
Re: Real-Time Motion Capture using Kinect and XNA I attempted to convert this to use the final Kinect SDK version 1 but didn't get far.Do you guys have an updated version?Would be great if this was in GitHub!
I attempted to convert this to use the final Kinect SDK version 1 but didn't get far.Do you guys have an updated version?Would be great if this was in GitHub!
Re: Real-Time Motion Capture using Kinect and XNA @StationStops: Sorry, we haven't had the time to test Kinect SDK v1 yet. Regarding GitHub: I think putting the sample including the DigitalRune Engine on GitHub would create the impression that the DigitalRune Engine itself is open source - which it isn't. But we will think about it...
@StationStops: Sorry, we haven't had the time to test Kinect SDK v1 yet. Regarding GitHub: I think putting the sample including the DigitalRune Engine on GitHub would create the impression that the DigitalRune Engine itself is open source - which it isn't. But we will think about it...
Re: Real-Time Motion Capture using Kinect and XNA Hi,I downloaded the sample, Digital Rune and Kinect SDK Beta 2. After I install I compile after pointing the references to Digital Rune dlls correctly on Visual Studio and I run the application.What I get is only a model following exclusively arm movements in a bad way, the legs of the model stay crossed and other body parts doesn't seem to respond to it also. In the video you seem to get a good result.Do you know what might be?Regards,Caio
Hi,I downloaded the sample, Digital Rune and Kinect SDK Beta 2. After I install I compile after pointing the references to Digital Rune dlls correctly on Visual Studio and I run the application.What I get is only a model following exclusively arm movements in a bad way, the legs of the model stay crossed and other body parts doesn't seem to respond to it also. In the video you seem to get a good result.Do you know what might be?Regards,Caio
Re: Real-Time Motion Capture using Kinect and XNA @Caio: Maybe you need to adapt the scaling of the model. The sample was tested with my height 166 cm and it does not "auto-scale" for larger persons. Also have a look at our forum. There is a pretty large thread where you might find more information (thread title is "Transforming Kinect coordinates to Character Model?").
@Caio: Maybe you need to adapt the scaling of the model. The sample was tested with my height 166 cm and it does not "auto-scale" for larger persons. Also have a look at our forum. There is a pretty large thread where you might find more information (thread title is "Transforming Kinect coordinates to Character Model?").
Re: Real-Time Motion Capture using Kinect and XNA Hello Good evening.First thank you very much for putting the information. I am very interested in seeing your example with the kinect. I have added all libraries.I use visual studio but I can not run it. I can not just run run How you?Would greatly appreciate your response
Hello Good evening.First thank you very much for putting the information. I am very interested in seeing your example with the kinect. I have added all libraries.I use visual studio but I can not run it. I can not just run run How you?Would greatly appreciate your response
Re: Real-Time Motion Capture using Kinect and XNA @Carabias Hi, maybe you must set project KinectAnimationSample as Set up StartUp Project
@Carabias Hi, maybe you must set project KinectAnimationSample as Set up StartUp Project
Re: Real-Time Motion Capture using Kinect and XNA I'm really interested about this project and i its working proparly(actually it is amazing :) ), now i want to do some modification to it, is there a way i can find the dude.blender file, coz i'd like to study the bone structure thank you verymuch,
I'm really interested about this project and i its working proparly(actually it is amazing :) ), now i want to do some modification to it, is there a way i can find the dude.blender file, coz i'd like to study the bone structure thank you verymuch,
Re: Real-Time Motion Capture using Kinect and XNA @kaml: We only have the fbx file (from the AppHub Skinned Model sample, create.msdn.com/en-US/education/catalog/sample/skinned_model). A blender file should be available here: www.discoverthat.co.uk/games/xna-dude.htm (I have never tested this file.)
@kaml: We only have the fbx file (from the AppHub Skinned Model sample, create.msdn.com/en-US/education/catalog/sample/skinned_model). A blender file should be available here: www.discoverthat.co.uk/games/xna-dude.htm (I have never tested this file.)
Re: Real-Time Motion Capture using Kinect and XNA hello currently iam working with gesture recognition through kinect will u plz tell me how can i do that type of work in wpf instead of XNA
hello currently iam working with gesture recognition through kinect will u plz tell me how can i do that type of work in wpf instead of XNA
Re: Real-Time Motion Capture using Kinect and XNA @Hasnat: The DigitalRune Engine includes assemblies that do not require XNA and can be used with WPF. What exactly do you mean by "that type of work"?For a more detailed discussion, please head over to our support forum.
@Hasnat: The DigitalRune Engine includes assemblies that do not require XNA and can be used with WPF. What exactly do you mean by "that type of work"?For a more detailed discussion, please head over to our support forum.
Re: Real-Time Motion Capture using Kinect and XNA First of all this is a wonderfull project and we use this application as the starting step of our project for Microsoft imaginecup 2012 and we became the 3rd place in sri lanka!!!! so i'm back here to thank you for Digital rune and to pay back to the community. the main problem we had when using this project is that we couldn't be able to customize the Dude model so we were really upset, but after lots of hard work and studying about 3d modeling we were able to create our own 3d model which work almost equalnt to Dude model, there may be people like us having troubles of using this project so i thought of uploading the model we created. www.ziddu.com/download/19261907/PersonFbX.rar.htmlif you need any help from me please contact me i would really happy to help (imaa95@gmail.com )
First of all this is a wonderfull project and we use this application as the starting step of our project for Microsoft imaginecup 2012 and we became the 3rd place in sri lanka!!!! so i'm back here to thank you for Digital rune and to pay back to the community. the main problem we had when using this project is that we couldn't be able to customize the Dude model so we were really upset, but after lots of hard work and studying about 3d modeling we were able to create our own 3d model which work almost equalnt to Dude model, there may be people like us having troubles of using this project so i thought of uploading the model we created. www.ziddu.com/download/19261907/PersonFbX.rar.htmlif you need any help from me please contact me i would really happy to help (imaa95@gmail.com )
Re: Real-Time Motion Capture using Kinect and XNA @Imal: Congratulation! And thanks for sharing the model. Under which license can we use this model? (Public domain, a Creative Commons license, MSPL, etc.) Sorry to bug you with this, but many users are wary to use a model without clear license terms attached.
@Imal: Congratulation! And thanks for sharing the model. Under which license can we use this model? (Public domain, a Creative Commons license, MSPL, etc.) Sorry to bug you with this, but many users are wary to use a model without clear license terms attached.
Re: Real-Time Motion Capture using Kinect and XNA did you use kineck for wondows or the xbox 360 kinect for this program? thanks alot
did you use kineck for wondows or the xbox 360 kinect for this program? thanks alot
Re: Real-Time Motion Capture using Kinect and XNA We used the Xbox 360 Kinect.
We used the Xbox 360 Kinect.
A collection of the most useful blog articles can be found here:
Article Collection (on Documentation page)
DigitalRune is a trademark of Garstenauer Information Technology OG.
Garstenauer Information Technology OG Weingartenstrasse 35, 4452 Ternberg Austria (EUROPE) office@digitalrune.com