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: 1973
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:

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

Zombie Kangaroo + Mesh relaxation 4 Replies

Hi all,I am trying to figure out how the zombie component is working. I only want to obtain the outputs from kangaroo to use it for Galapagos (in the end). I am wondering if it is possible to create a mesh relaxation with the zombie component. I…Continue

Started by Stefan. Last reply by Stefan yesterday.

Kangaroo 2 47 Replies

Hello Daniel i have downloaded and installed Kangaroo 2 but i cant interact with the rhino viewport, i have installed rhino 5 64 sr11, both files are unlocked, do you have any idea why this happens?Continue

Started by dvdrbls. Last reply by Julian Rot on Wednesday.

Branch and Lists in Equalize Angle vs. Bend

Hello,When I feed 8 points (in Lists) for 20 Tree branches to the Eq Angle, I get as an output 20branches with one force...I was expecting to see the same data layout output as for the Bend component where I get 20branches with 8 forces...See…Continue

Started by Jean on Wednesday.

Clean Joints on Offset Mesh Using Planarize

Hi Everyone,Just hoping someone has come across this issue of trying to create clean nodes on Offset Meshes. I've tried WB and a few planarize scripts but unfortunately no luck. I posted this on the main page and now I've moved on to trying to solve…Continue

Started by Omri Menashe Oct 1.

Setting an initial gravity/velocity/vector (V2) 1 Reply

Hello all. I'm trying to create an effect as if I was in a racquetball room throwing a rubbery ball against the wall. Essential I want to send the ball towards a vector and have the ball …Continue

Started by Charles Aweida. Last reply by John Harding Oct 1.

Catenary roof structure

Hi all,I am currently working on a project for the design of the roof of a parking lot.At first I created a surface with grasshopper and baked this surface into rhino. In rhino I converted the surface to a mesh (NURBS object). The goal is to relax…Continue

Started by Stefan Sep 29.

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 kipodi on September 29, 2015 at 7:53am

Hello, wondering if kangaroo has a solution for a conical mesh..or an idea on how to create one.

Comment by Charles Portelli on August 21, 2015 at 9:47am

The issue below was resolved once i turned off the custom ribbon layout i created.

Comment by Charles Portelli on August 21, 2015 at 9:05am

Hi All, I got a new computer and tried installing kangaroo but the tab does not show up in gh. I"ve tried placing the files in this directory:

C:\Program Files\Common Files\McNeel\Rhinoceros\5.0\Plug-ins\Grasshopper (b45a29b1-4343-4035-989e-044e8580d9cf)\\Components

I've also tried placing the files in this directory:


I"ve checked the security settings on the files. They are not blocked. Any ideas how I can resolve this?


Comment by wenyu on June 7, 2015 at 5:03pm
Comment by wenyu on June 7, 2015 at 5:01pm

Hi Daneil, I use your definition and add string force to it because i want to make the folding surface into a cylinder shape.But the shape doesn't look like so round , so i want to add one more string force after the surface has already been folded, but it didn't work, the error message is solution exception.

Hope someone could help me !!!

Comment by Juan Camps on May 24, 2015 at 8:19pm

Hi All, I have a problem with a surface I'm designing (see screenshot attached). Since the surface height changes, the height subdivisions (V coordinate) of the diamonds make the diamonds irregular. I want the diamonds to be as similar as possible in size.

Any help/ideas would be appreciated! Thanks!!

Comment by Ebrahim Aly on May 20, 2015 at 7:19am

Hello Daniel,

I'm new at Kangaroo and I've a problem whenever i try to run one of the example files downloaded with kangaroo I get the error shown in the attached screenshot, can you help me with this please?

Comment by Agneesh on May 19, 2015 at 3:33pm

Hello Daniel,

I have used your origami cluster for a simple origami. However, my mesh keeps on rotating once Kangaroo Physics is active, unlike your example. Is there as solution please?



Comment by David du Bellier on April 29, 2015 at 12:44am

That are amazing news! Thank you for your work Daniel, kangaroo already allowed us to create immaculate tensile structures...

Comment by Daniel Piker on April 28, 2015 at 11:21am

@Juan - You can use the Length component, with the target length set to zero for the equivalent of the old springs component for tensile form-finding. The next release will also contain a membrane element.



Search Grasshopper


  • Add Photos
  • View All

© 2015   Created by Scott Davidson.   Powered by

Badges  |  Report an Issue  |  Terms of Service