Kangaroo

THIS FORUM IS NO LONGER ACTIVE. PLEASE POST ANY NEW QUESTIONS OR DISCUSSION ON:

https://discourse.mcneel.com/c/grasshopper/kangaroo

The discussions here are preserved for reference, but new questions posted here are likely to go unanswered.

Kangaroo is a Live Physics engine for interactive simulation, optimization and form-finding directly within Grasshopper.

Keyframe animation tests and poseable figure

As shown in the above video, I've been playing around with a very basic system for making keyframed animations from Kangaroo simulations.

This is still just proof of concept stage - lots of issues to fix before it becomes very usable, but I'm posting the file here in case anyone wants to try it out.

It is a few simple scripts which record point locations from a first Kangaroo simulation whenever the capture button is pressed, and then when you playback the animation it interpolates between this captured sequence of points, pulling a second Kangaroo simulation to these targets. You can control the playback with a slider or automatically with a timer.

This should work with other Kangaroo2 setups, but here demonstrated with a human figure modelled as a collection of rigid bodies. At the knees and elbows the rigid bodies share 2 points to give a hinge joint, while for shoulders, neck, hips, ankles, wrists and torso they share only single points, giving a basic ball joint.

This is also the first time I've posted this model, and I'm also including the setup without the animation script. I know there are numerous issues with this poseable figure - dragging joints sometimes moves parts of the model you don't want to, and joints have unrealistic ranges of motion. I made a start at trying to limit some of these - such as ClampLength goals to stop the torso bending too much, but more could be done. There is also an issue with the rigid bodies (which track orientations with a frame of 3 points) that if you grab the frame itself, the simulation can break. I'm currently rethinking this whole approach.

I should also say that although I have heavily modified this human model to make it work for this setup, I did start from a mesh downloaded from some free 3d model collection site, but unfortunately I do not know the name of the original artist. If someone recognises it I would like to add appropriate credits.

  • up

    Jon

    awesome Daniel, thanks!

    • up

      Christian Schmidts

      Hi Daniel,

      very interesting development! I wanted to ask you in which direction you are intending to take this? I remember some stuff you posted a while ago dealing with elastic deformation. (https://vimeo.com/90339692

      Will you try to bring these two things together in order to have a mesh which deform according to a kind of bone rig? Or could it be feasible to use plankton to remesh?

      I would be interested in being able do do stuff like this in GH:

      https://vimeo.com/70775770

      Best, Christian

      1
      • up

        Maria Vlachostergiou

        This is amazing! I was trying to figure out how to create swimming patterns and record them and I came onto this! However, I downloaded the files and when opening the 'animate human', it doesn't work. It seems like some feautures are missing?