Close Show/hide page

Testing Kinematics with Papervision3D, Collada

Thumbnail - Click me

A forward kinematics experiment using Papervision3D v2.0 alpha and a Collada 3D model of a robotic arm.

Hope you enjoy it.

I don’t want to release any source from this yet, as I want to do some more work on it, relating to the following items…

  • As you’ll see, the range of rotation of each joint is constrained, but there isn’t enough program logic to keep consecutive joints from being rotated in such a way that the model folds in on itself unrealistically. Incidentally, the kind of model used here is ideal for playing with kinematics, as each joint rotates around only one axis, and each segment is connected on each end by no more than one other segment, except for the ‘pincers’. (Next up: bipeds . . . ?!)
  • There’s some ‘Z-popup’ which could be mitigated by modifying the source model just a little. By the way, the model comes from Learning 3ds Max 2008 Foundation.
  • The user interface to this piece is bare-bones functional. But I’m glad to have discovered that it’s possible to detect overlapping key-down events in Flash, which is kind of interesting. (If anyone has ideas for an easier-to-use interface that stills allows you to control multiple joints simultaneously, please let me know)
  • Lastly, it makes sense at this point to (learn how to) do some basic inverse kinematics. If and when I figure something out, I’ll post an update…

20 Responses to “Testing Kinematics with Papervision3D, Collada”

  1. FlashBookmarks Says:

    Love it !

    The controls are working great, however i would replace 1q2w with the arrows key and for the rest like: pageup/pagedown home end last 4 maybe some sort of wasd setup. Or maybe we should pickup some special gloves for this :)

  2. Brent Says:

    Damn this would be fun to hook up to an Arduino. You could use potentiometers/digital compass/etc. to control the joints. Looking forward to your release of the source!

  3. Andy Says:

    Awesome! Great work!

  4. VK Says:

    Shtoopid! No, just kidding. Looking great. I can’t wait to see how this can apply on some fancy sites.

  5. m Says:

    i could play with it a whole day:D

  6. Berther Anka Says:

    Next step: Placing objects to pick up and interact with + physics engine that makes the objects bounce when they’re dropped again.

  7. xero / fontvir.us Says:

    amazing!
    i love it

  8. John Says:

    fantastic work

  9. frank Says:

    nice one.

    cheers
    _frank

  10. James Says:

    Holy mackerel. That’s awesome.

    I’d love to see some inverse kinematics going on that. I’m imagining a lot of flash stuff in the future with robotic arms and IK animations…

  11. Victor Says:

    Amazing!, Very Good!
    one cool “next step”: aply bones on skin (Skinning) in papervision3d

    http://gpwiki.org/index.php/OpenGL:Tutorials:Basic_Bones_System#How_does_a_bone_system_work.3F

  12. Nate Chatellier Says:

    Absolutely incredible!

  13. Fassa Says:

    Great job … rly great

  14. Rémi Toffoli Says:

    It rocks !!!!

  15. Eren Says:

    This is great, I just cant wait for IK

  16. Moorthy Says:

    Jus rocking!! As a matter of thought, mouse movements could be associated for rotation!!

  17. 3d animation studio Says:

    This is really the art of new age media. I hope that this technology develops further so that it can be used regularly on sites.

  18. pabodie Says:

    Love it.

    Someone needs to make a marionette with FK and IK support so it can be manipulated and also “jangle” and show the effects of gravity.

  19. admin Says:

    Totally. I’ve been thinking recently that even without IK-type intelligence, adding/implementing some properties/behaviors to each segment could yield some really interesting results. Angular velocity, mass, resistance, ‘bounciness’ … And gravity, as you said. As long as the effects were properly communicated up and down the chain of segments. That’d be fun…

    Lee

  20. Farah Says:

    I really like this when are you likely to release the source.

Leave a Reply

Powered by WP Hashcash