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: 2523
Latest Activity: yesterday

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:

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

Kangaroo 2 Utility 2 Replies

Hi Daniel,Is there any plan to add utilities in Kangaroo 2, similar as Kangaroo 1?I tried to make some utilities exist in Kangaroo 1 using purely Kangaroo 2 component, for instance, the origami component.Please let me know if I can…Continue

Tags: component, origami, utility, Kangaroo2

Started by X.Arthur.Ma. Last reply by Arthur Lara yesterday.

Houdini Kangaroo Comparison 5 Replies

Just a really general question.I am wondering about the pros & cons between Houdini & Kangaroo, since both of them are doing physical simulation. It feels like Houdini these days has been focusing on filming & animation industry, while…Continue

Tags: Houdini

Started by Addin. Last reply by Addin on Sunday.

Signed area expansion

Help !!!!Can someone tell me is it possible to make this with kangaroo?Continue

Started by Amir Habibi Jul 18.

Kangaroo paneling problem 6 Replies

Hello there, i have a little problem whit Kangaroo.I got Kangaroo Physics 099, and uploaded the user's object, but the software show me only some command located under the utility panel. I use Grasshopper 0.9.0076. Have you some hint or solution?Continue

Tags: #panel, #kangaroo

Started by bbdick. Last reply by ng5 Alex Jul 17.

Untitled 1 Reply

No Description

Started by joanna-2015. Last reply by Moonbeast Jul 17.

How does Kangaroo work? 4 Replies

Hi all,first of all, I am not an advanced user of Kangaroo. However, I am writing a masters thesis on various form-finding methods of tension structures and have also dedicated a chapter to Kangaroo as it has proven very useful for our project.…Continue

Started by Samo P. Last reply by shehzad irani Jul 16.

News and Updates

Force polygons of equilibrium structures

I have recently been exploring some reciprocal force diagrams using Kangaroo. From the 1869 paper by James Clerk Maxwell On reciprocal figures, frames and diagrams of forces : …to construct the Polygon of Forces, by drawing in succession lines parallel and proportional to the different forces, each line beginning at the extremity of the last. If the forces acting at the […]

Minimal surface puzzle

The top row shows three different minimal surfaces from the same boundary curves. The bottom row shows the same 3 surfaces rotated and in a different order. Which number corresponds to which letter?

Orthogonal Clustering

I’ve always aimed to make Kangaroo a specifically architectural physics engine. While it shares many characteristics with similar engines used for other purposes, such as games and animation, it has some features that are uniquely suited to designing buildings. Form-finding and physics-based-modelling often result in curved shapes, with an elegant and natural appearance which is something […]

Variation from Uniformity

All of these triangles are identical and equilateral: In architectural geometry over the last few decades, a common topic of research has been how to build and clad doubly curved surfaces in an efficient way. While computer aided manufacturing has made it possible to make buildings where every panel has slightly different dimensions, there are […]


      As regular readers of this blog will know, I’m passionate about the use of relaxation and force-based methods for optimizing geometry in a very interactive way. There is a great variety of form-finding that can be done by assigning physical forces as interactions between sets of particles. However, in my investigations so […]

Comment Wall


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

Comment by Earth on Saturday

Hi all, where does Kangaroo define literally the mass of springs? The thing is, when using Kangaroo, there is no mass input, and  if I applied force=0 then displaced the support, why the structure vibrates when there is no mass defined anywhere?

The second thing is that, when I applied very high value of stiffness, with proper support conditions, the elements fly off to there screen (displacement=infinity=null), even if there is no force applied, anyone know why?

help :)

Comment by Grazia Pota on May 7, 2017 at 4:29am

Hi everyone, I've a simple question. Is there an equival component for PowerLaw in Kangaroo 2?

Comment by Will Pearson on February 6, 2017 at 8:49am

Hi AJ, can you describe in what way the grab component is not working? The more detail you can provide, the more help you'll get! What version of Kangaroo are you using? What error messages (if any) are you getting when trying to use the grab component?

Comment by AJ on February 6, 2017 at 7:59am

im trying to use the grab component without big success . following the video (and also another example file > ... not working as well)

help :)

Comment by ALI ESLAMI on January 3, 2017 at 4:57am
Comment by Ramon van der Heijden on December 20, 2016 at 7:43am
Hi Paul Arsene,

That post about organizing the canvas was by me. I have progressed this work quite far, but have not used kangaroo for this so far.
If you're interested, I can send you a prototype of the tool. It is functional, but may need some improvement.
Comment by Paul Arsene on December 6, 2016 at 3:27am

Hello everybody,  few weeks ago I've seen some attempt to reorganize grasshopper code into a readable clean manner using kangaroo, like transforming spaghetti code into clean linear code, but I just can't find it anymore. Any info about this? Thanks in advance.

Comment by Canox on November 30, 2016 at 9:35am

i have a new examples with kangaroo 2 ( soapfil , anchor and tangential smooth ) and laplacian .

in kangaroo 2 is easy to control a mesh tension but is more difficult to have anchorpoints control in the naked edges .

this is the example with kangaroo 2 

this is a example with laplacian .

For produce a differents solutions than "Minimal surface" with kangaroo 2 or  solutions with "Springs" from kangaroo we need to find a specific force that push the Mesh vertex points  to the fix anchor points in the naked edges .



Comment by Canox on November 27, 2016 at 4:55pm

i leave here the definition , and rhino file .

( of course i used Meshmachine settings

28-11-16.3dm )

Comment by Canox on November 27, 2016 at 4:43pm

I am working in a nodes project for 3d printed  structures and its difficult find a smooth transition between the branch and the joint with springs force .

I am trying to improve the tangency between  the the final mesh at the anchorpoints  and each branch direcction rest lenght in springs force.

At the same time avoid the mesh to go in a convex direcction and have a smooth transition.

How we can find a definition  , where the are diffents settings from  rest lenght and stiffness to find a correct mesh  ? i tried to apply unary force in some points to the mesh in every anchorpoint without success

this is de example that i work with 

this is what i get normally , with rest lenght and stiffness settings  

this is my goal , where there are a smooth transition in every branch direccion 

thanks !!!!



Search Grasshopper


  • Add Photos
  • View All

© 2017   Created by Scott Davidson.   Powered by

Badges  |  Report an Issue  |  Terms of Service