algorithmic modeling for Rhino



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

Read about the new release here

The Discussion Forum below is the best place to ask any questions about using Kangaroo.

(Please avoid posting questions on the Comment Wall, as it does not allow organization of replies)

Members: 1850
Latest Activity: 13 hours ago

You can read an introduction to the ideas behind Kangaroo here:

Kangaroo2 is now available for testing (see full announcement here). Please bear in mind this is still a work-in-progress, and features are still subject to change.

You can download it from here:

The 2.0 download includes a first draft of the manual and a collection of example files.

This thread contains some troubleshooting tips if you have problems getting it installed and working:

Some further example files for version 2.0 can be found here:

with more to follow - if there is some particular feature you would like more examples of information on please ask there.

The Kangaroo2 solver library is now separate from the Grasshopper components, and can also be referenced and used in scripts, either in the GH VB/C#/Python components, or in RhinoScript/PythonScript in Rhino. Questions about these can also be posted on:

Kangaroo2 is a complete rewrite, and the main solver/goal/force components are not cross-compatible with the previous version. However, you can keep both versions installed together allowing older definitions to be opened, and for now this is recommended, as there are also several utility and mesh processing functions relevant to both versions.

While v2 introduces many new features and improvements, not all the features from the old version currently have equivalents in the new version, but the plan is to add them all over time.

The links below are for the old version. More documentation and videos for the new version to appear soon.

example files(for version 0.099):

manual(for version 0.099):

getting started video:

demo videos:

Some more tutorial videos from EXLAB:

Discussion Forum

Rest Length in Kangaroo 2

Hey!I am trying to do different simulations for a Gridshell with the new kangaroo. I wanted to know how I can input the Rest Length so that the total lath length would remain the same even after the simulation. Also the mesh always takes the shape…Continue

Tags: kangaroo, gridshell

Started by Seeja Sudhakaran 13 hours ago.

Reciprocal structures - example definition 19 Replies

The latest release of Kangaroo contains several new features for…Continue

Tags: plankton, kangaroo, reciprocal

Started by Daniel Piker. Last reply by Ann Cui 17 hours ago.

Using Kangaroo2 CoPlanar / OnPlane goals 4 Replies

I have a not-quite-developable surface, and I want to squash it flat to make a fabric pattern.  I thought the way to do this would be to use a strong CoPlanar constraint to make it flat, and springs on each mesh edge to pull them close to their…Continue

Tags: CoPlanar, kangaroo 2

Started by Bob Hobbs. Last reply by Bob Hobbs 23 hours ago.

trouble bending a flat module so that it becomes tridimensional 3 Replies


Started by Andrei Raducanu. Last reply by Andrei Raducanu yesterday.

New origami example 34 Replies

Origami_simplified.ghThis example shows the use of the new user object…Continue

Started by Daniel Piker. Last reply by Daniel Piker yesterday.

Line-Line collision in Kangaroo 2 2 Replies

Hi,I was wondering if the function, Line-Line collision, is implemented in Kangaroo2 as a component or not.I wanted to do some collision testing with the ability to use the new Drag component.There is already a RigidBody and 2dCollision, but I want…Continue

Started by Calcen Chan. Last reply by Calcen Chan yesterday.

News and Updates

Loading… Loading feed

Comment Wall


You need to be a member of Kangaroo to add comments!

Comment by GIL AKOS on January 9, 2013 at 4:48pm

Here are some studies for what we will be covering in this Friday's webinar on Simulation with Kangaroo! Particles + Forces, Funiculars, and Dynamic Relaxation with Analysis.

Comment by Vangel Kukov on December 20, 2012 at 4:01am

I have two types of meshes and need the second ones to follow the first one without affecting it. Laplasian and springs on the first one, only springs on the second ones. This is what I have so far. Maybe I'm doing something wrong couse it gets too heavy.


Comment by Pantelis Adiavastos on December 7, 2012 at 10:21am

thanks Mostafa!

for more stuff and details go here

English booklet coming soon

*daniel excuse me I was intending to go for Daniel rather than Mike in my last post :S

Comment by Mostafa R. A. Khalifa on December 7, 2012 at 6:36am

Good Job  Pantelis Adiavastos... conguratulations....(^_^)

Comment by Pantelis Adiavastos on December 7, 2012 at 3:08am

hello people, hello Mike,

the following is my thesis project, that used kangaroo to generate  tents for a kinetic interactive structure

Comment by rovinida fitriana on November 18, 2012 at 11:55am

can you upload example kangoro gh definition file for something like wedgrid or optimized path?

Comment by PEPE ALGECIRAS on November 15, 2012 at 7:42am

Hi all,

I was trying to make a family of tangent incircles in the mesh but I don´t know what can I do to make it work.

I tried making pairs with each face and its adjacent but it seems to be a wrong way, any hint?

thanks in advance


Comment by M NICK on November 6, 2012 at 4:05pm

Hi Daniel, 

Is there any example for Gridshell Form Finding using Kangaroo?

I am new in Kangaroo and couldn't find any related example to my work.

Thanks a lot


Comment by Daniel Green on October 7, 2012 at 8:24am

Hi Daniel,

I'm a structural engineer and I'm particularly interested in using Kangaroo for form-finding of 'efficient' structures. I was wondering if there is any capability, current or imminent, to deal with rigid bodies (e.g. a bridge deck or pylon) and allow them to interact with the rest of a particle-spring network? I've attempted something similar before but had difficulty moving past particles and forces to rigid elements with rotational inertia and subject to torques.


p.s. top work, this is a fantastic tool.

Comment by Daniel Piker on August 16, 2012 at 3:04pm


It depends what your aim is. This component was originally made just for removing points which were exactly or very near exactly coincident, as a way of making sure spring networks were properly connected at the nodes before simulation.

For these purposes which of 2 almost identical points it took didn't matter, so it always just takes whichever is first in the input order.

If you want more control over how it chooses which of 2 nearby points to keep, such as always choosing the highest, then I'd recommend writing your own script for it.



Search Grasshopper


  • Add Photos
  • View All


  • Add Videos
  • View All

© 2015   Created by Scott Davidson.   Powered by

Badges  |  Report an Issue  |  Terms of Service