Rhino Beta Feature: Grasshopper 2 (Beta)

What is Grasshopper 2?

Grasshopper 2 is the next generation of Grasshopper, included in the Rhino BETA. It is a ground-up rewrite of the visual programming environment you already know — new solver, new data model, new interface — built to remove the limits we’ve been designing around in Grasshopper 1 for over fifteen years.

Grasshopper 1 is still there and getting regular enhancements. GH2 installs alongside it — run the GH2 command to open it and start exploring.

Why Grasshopper 2?

Grasshopper 1 has been not been able to add key features for years because its core architecture can only stretch so far. Rather than keep patching, GH2 rebuilds the foundation to allow core features to continue to grow into the future.

  • A real data model. Data trees have been redesigned, and every item can now
    carry meta data — attach names, values, and tags to your data and filter,
    sort, or assign by them downstream. No more shuttling parallel trees around to
    keep track of what’s what.
  • A solver you can interrupt. GH2 computes across your cores, and a running
    solution can be cancelled — a slider nudge you didn’t mean no longer means
    waiting out the solve.
  • Native looping. A cluster can feed its own output back into its input, with
    a Loop Repeats pin setting the iteration count. Random walks, relaxation,
    growth, anything iterative — built in, no add-on required.
  • Globals without wires. Shout publishes a named value, and any parameter
    expression downstream can read it by name. The dependency is real — move the
    slider and everything listening updates — with nothing to route across the
    canvas.
  • A modern interface. Redesigned components and icons, a zoomable UI that
    reveals more detail as you get closer, dark and light modes, and in-canvas
    widgets that put settings where you’re working.
  • Documentation built in. GH2 ships with over 120 example definitions,
    conceptual help topics, and a 300+ term glossary — all available inside the
    app. Hover help actually helps.
  • Display rules. Control how results preview in the viewport — colour,
    visibility, styling — with a rule syntax, per object, without baking.
  • GH2 scripting. C# and Python 3 script components running on the new script
    editor stack. See the Script Components post for details.

How It Works

Open the Rhino BETA and run GH2. GH1 and GH2 can be open at the same time —
your GH1 workflow is not affected.

The canvas will feel familiar: components, wires, parameters. The differences
show up as you work. Every parameter carries its own data modifiers — thirteen of
them, in every parameter — so flattening, grafting, sorting, and cleaning happen
where the data already is instead of needing a component each. Meta data travels
with your geometry. Previews can be governed by rules connected to the meta data.

Help is built into the canvas rather than sitting in a browser tab. Every
component and parameter has its own documentation page: click the Help button
in its panel, or press ? to search components. For the full library — components by category,
conceptual topics, a pin reference, a type reference, and a 300+ term glossary,
all searchable — use Help > Documentation…, or right-click the canvas and pick
Documentation….

The example definitions are the fastest way in. Over 120 ship with GH2, covering
lists, trees, gradients, display rules, meta data, meshes and more, and most are
linked from the help page of the component or topic they demonstrate — open one,
pull it apart, change it.

Try It

  1. Download the Rhino BETA and run the GH2 command.
  2. Open a few of the built-in example files and pull them apart.
  3. Rebuild one of your small GH1 definitions in GH2 and see what the new data model does for it.

Notes

Grasshopper 2 is a work in progress:

  • Feature parity with GH1 is not there yet. Components are still being added; keep production work in GH1.
  • GH1 plugins do not load in GH2. The GH2 SDK is still evolving — plugin developer docs will follow.
  • Opening GH1 Files: You can open GH1 files in GH2 but its not a recommended workflow, it opens GH1 in the background to support the GH1 components.

Found a bug? Have opinions? That’s what the BETA is for — post them here and we’ll get them into the system.

Download the Rhino BETA and Try It Out!

We hope video tutorials covering Grasshopper 2 components can be released, helping users learn how to use GH2 more quickly and intuitively.

Wow — it’s been a while! Very exciting to see this land. Huge shout-out and thanks to the devs, and especially to this one guy!

Fingers crossed for the SDK. And one question while I’m here: is there anything to share yet about how the official Rhino MCP will tie into GH2? I noticed the groundwork already seems to be in place, and I’m hoping this goes really deep — for development especially.

Grasshopper fundamentally changed how design uses programming once already. Now, with GH2 and everything converging on MCP, I think there’s a chance to do it all over again. If the combination is flexible enough, the potential here is unlimited potential.

Hi Christian,

I like to think of GH2 as one of the last of its kind, a single author (lots of help as of late), non-ai assisted production.

That said, David is looking at providing increased readability in the platform by the various models.

That groundwork is further along than it looks. The official RhinoMCP already has a GH2 tool set in the pre-release (tick “include pre-release” in the Package Manager).

 `g2_search_components`, `g2_describe_component`, `g2_place_component` / `g2_place_slider`, `g2_connect` / `g2_connect_many`, `g2_apply_graph` (place + wire + solve in one call), `g2_solve_canvas` and `g2_get_canvas_graph`.

So far I found it better to script components than placing them. Still a lot of things to add going forward that will speed things up.

Here are a couple MCP generated definitions (claude)

loop-cluster-recipe.ghz (24.9 KB)
brick-bond-gradient.ghz (79.5 KB)
corpus-1-1-rotated-polygons.ghz (91.6 KB)

I might have missed this but where are the examples again? Do I need to download them from a specific page? Thanks!

Press F1 on the keyboard

F1 only opens the Documentation… am I missing something?

Also @Japhy FYI I have experienced many crashes while using search function in documentation just now,

in the help you can drag the examples to the canvas, also note that they take on the settings of your current view pulldown (full names etc), clear help cache to see changes take effect.

Hi, I’m experiencing constant crashes. It literally crashes when I hover over the component list, place a slider on the canvas, or sometimes just leave it open for a while. At the moment, it is pretty much unworkable for me. Is anyone else experiencing this?


I haven’t been able to test it properly because it crashes every two minutes, but I have to say that I’m deeply disappointed with the direction the UI and UX have taken.

It feels more like a playground, or a UX designer’s wet dream, than a serious piece of professional software. There are so many things that feel completely unnecessary, overengineered, and overdesigned.

For example, the circular fade effect when hovering over a menu tab is extremely distracting. It may look cool, but it adds absolutely nothing to the workflow or makes the software any better to use.

The sparkles when connecting wires are another example. Again, completely unnecessary visual noise.

Then there is the whole moon-and-sun arc animation when changing between light and dark mode. Like, what is this? A full animated celestial transition just to change the display mode? Come on. It doesn’t look serious at all.

Even the font chosen for the components feels far from ideal to me. I understand that this is more of a personal preference, but I really don’t like it. Combined with the inconsistent component colors, everything just feels visually chaotic and much more playful than professional.

At the same time, there are actual UI issues that affect usability. For example, when dragging components in dark mode, they appear in light mode until they are placed on the canvas. That is the kind of thing I would expect the UI work to focus on, not adding a silly spark when I connect two wires.

The zoomed-out components are also incredibly distracting, and the shifting animation makes them even worse.

I really hope that GH2 comes with user customization so that we can have our own themes…

I love what David has done for GH in general, and I have a huge amount of respect for him and his work. But I also think he has always had a bit of an obsession with UI and UX, and this feels like he was simply allowed to give in to every possible design idea and do whatever he wanted. It is what happens when too much time and creative freedom go unchecked without someone stepping in and asking whether all of this actually improves the software.

The entire interface currently feels more like a kids’ playground than serious professional software.

I really hope GH2 includes proper customization options so users can create their own themes, disable all these unnecessary effects, change the fonts and colors, and adapt the interface to how they actually work.

Haven’t seen this in the latest. Lets get your SystemInfo and start troubleshooting.

I think its more stable now after updating AMD graphics driver.

Good to hear.

I for one love the look and feel of GH2 canvas actions, after working in it for a while going back to GH1 it’s very noticeable.

@Japhy sending you my systeminfo in a dm because I tried launching and running GH2 twice a few days ago and it crashed both times, so I gave up and went back to GH1.

Super exciting!! Looking forward to test Gh2 out!
Any estimates on when this thing ships / moves out of beta? :slight_smile:

GH2 needs more developers to speed up its development. Besides, the brand‑new Kangaroo has not been available for GH2 yet. At the current pace, the official release of GH2 will probably arrive together with Rhino 11.

I have the same feeling. While we can’t really know, from the outside it appears that for such a project, the McNeel team doesn’t have enough developers. This is noticeable especially for the GH2 development and the cycles/rendering integration. Somehow I get the feeling this concerns Rhino as a whole.

Another point: I believe GH1 and GH2 should co‑exist only in Rhino 11, while only GH2 should be available in Rhino 12. This can speed up the adoption of GH2.

I don’t think there should be that long of a transition. That would be two more Rhino versions, not counting Rhino 9 which isn’t even out yet. That wouldn’t be a speedup, it would be incredibly unambitious, development at a snail’s pace. IMO, 10 should still allow to run GH1, 11 should drop it and be GH2 only.

Though it is probably way to early to speculate about this. I simply hope that development speed pics up and we can start imagining GH2 as a full release for RH10 - but I don’t see this happening without McNeel hiring more developers.

I totally agree with your point.