Kangaroo 2.0 - Now out of the pouch and available for testing! – Grasshopper (2025)

Table of Contents
Olivier Suire Bill Bergman Agata K

by Daniel Piker

Mar 22, 2015

A few days ago I uploaded the first public work-in-progress version of the new Kangaroo (http://www.food4rhino.com/project/kangaroo)

I'm really excited to share this new release - which makes Kangaroo significantly more powerful and flexible.

This is a complete ground-up rewrite of both the core solver and all interface components, with several key improvements:

  • Greatly improved stability and convergence speed, overcoming previous limitations on stiffness values.
  • The oldForce objectshave been replaced withGoals. These encompass forces, loads and constraints in a single simple system.

  • Goal types for many new applications, such as Areas, Length clamping, Length and Angle Snapping, Collinearity, Coplanarity, Symmetry constraints, Rigid body assemblies, plasticity and more...

  • Creating goals is now simpler than ever, allowing new ones to be added quickly as needed. New custom goals can be written in the Grasshopper scripting components and modified even while the solver is still running!

  • Several of the more awkward and annoying aspects of the old interface have been improved - No more need to reset whenever goals are added, removed or modified, no more need to flatten the goals input, no more need to keep starting and stopping the timer.

  • Direct dragging and anchoring of points in the Rhino viewports with the new Grab tool.

  • The solver library is now separate from the Grasshopper components, to allow power users and developers more direct control and customization. It can be referenced from Grasshopper's VB/C#/Python scripting components, or from PythonScript/RhinoScript in Rhino.

  • The full version is free, and allows both commercial and non-commercial use

Please bear in mind that this is still a work-in-progress release - there are likely still some bugs and features which are missing or not working as they should. In time this is intended to grow into a full sized Kangaroo to completely replace the older version, but it is not there yet (hence its earlier codename 'Joey' - a young Kangaroo), and there are still some features from the old one not yet in this version. Therefore it is still recommended to install both together.

Also, all features may be subject to change in subsequent releases, and particularly if you start scripting with this library, be warned that there may still be breaking changes to the API ahead.

Because so much has changed from the previous release, much of the previous documentation/tutorial videos etc. no longer applies to this version. There is a pdf with some usage notes and descriptions of the existing goals included in the download, and the plan is to expand this into a more complete manual over time, as well as adding more tutorial videos. I appreciate your patience as the documentation is updated. Please continue to post questions/requests/bug reports in the forum of the Kangaroo group here.

Many people have made it possible for Kangaroo to get to this point. In particular for this release I'd like to thank: Will Pearson, Steve Baer and David Rutten at McNeel, Anders Deleuran and Dave Stasiuk at CITA, the LGG group at EPFL andMasaaki Miki. Thanks also to those who tested the pre-beta version and gave useful feedback - Andrew Heumann, Tomek Gancarczyk, Robert Vierlinger, Brandon Clifford and Wes McGee.

Thanks also to McNeel for their support, which has allowed me to devote the time to develop this new version.

Finally a big thank you to all of you, the Grasshopper community, for your continued enthusiasm, stimulating discussion, and for keeping this fun.

Enjoy!

Daniel

Load Previous Comments

  • Olivier Suire

    Any plans to do away with the Kangaroo 1 / Kangaroo 2 situation ?

    Proper documentation ? A primer ? At last ?

    Aug 30, 2017

  • Bill Bergman

    Hello, curious where this project lies. I read that it is part of Rhino 6 but I attempted to use an outdated script and "updated" Kangaroo, this I believe downgraded and crashed kangaroo. Rhino has this errorException System.IO.FileLoadException:
    Message: A strongly-named assembly is required. (Exception from HRESULT: 0x80131044

    Hoping the upgrade to Rhino 6 service release candidate fromVersion 6 SR11
    (6.11.18348.17061, 12/14/2018).

    Trying to make equally spaced points on a sphere, any help would be appreciated.

    Jan 25, 2019

  • Agata K

    Hi Daniel,

    I'm trying to simulate tensile membranes with elastic boundary and different warp and weft strength. The result with the same tension in both directions should look like the the one on the picture below. At the moment the geometry still stays 2D. Do you know how could I fix it?bending_membrane_warp-weft.ghKangaroo 2.0 - Now out of the pouch and available for testing! – Grasshopper (6)

    Jan 27, 2019

Kangaroo 2.0 - Now out of the pouch and available for testing! – Grasshopper (2025)
Top Articles
Latest Posts
Recommended Articles
Article information

Author: Allyn Kozey

Last Updated:

Views: 5975

Rating: 4.2 / 5 (63 voted)

Reviews: 86% of readers found this page helpful

Author information

Name: Allyn Kozey

Birthday: 1993-12-21

Address: Suite 454 40343 Larson Union, Port Melia, TX 16164

Phone: +2456904400762

Job: Investor Administrator

Hobby: Sketching, Puzzles, Pet, Mountaineering, Skydiving, Dowsing, Sports

Introduction: My name is Allyn Kozey, I am a outstanding, colorful, adventurous, encouraging, zealous, tender, helpful person who loves writing and wants to share my knowledge and understanding with you.