Grasshopper 2α has been available for Rhino 8 (WIP) since April '22. I've been working closely with it since April '23, developing advanced plugins and UI extensions ♾️
While there are obvious similarities between the two software packages, there are many key differences that set GH2 apart.
ℹ️Here are some of my findings and insights about GH2 native plugin development with C#:
1. ⬇️Installation: GH2 is still in Alpha, so it isn't shipped even with the latest WIP version on Rhino. Instead, it needs to be installed via the Package Manager as a Pre-release plugin. You can find the instructions to do so here: https://lnkd.in/dt-P93bk . Naturally, a valid Rhino license is required.
2. ✨Fresh Start: GH2 is not an update for GH, nor does it have anything common in its codebase. It is written entirely from the ground up - from the computation kernel to vanilla plugins. This also means that GH plugins do not work directly with GH2, yet. There are some clues for future backwards compatibility support, but I wouldn't hold my breath. While simple plugins might still be easy to port, more complex ones will require significant redevelopment.
3. 🧑🏽💻Plugin API Differences: While the overall structure of the components is very similar, there are some major API differences to pay attention to when porting GH plugins to GH2. Similar differences can be found in other abstract classes as well, which means that some development effort is required to upgrade even the simplest plugins.
4. 🎨Canvas Rendering: The rendering style of GH2 has received the biggest overhaul. The most exciting part - Icons are no longer just 24x24px images! You can now hardcode vector icons that can even react and respond to component states or change based on the theme. Oh, and there's also a native dark mode! In my opinion GH2 looks incredibly clean and refined. Its UI is a breath of fresh air, with elegant details and crisp animations.
5. ➕Plugin Installation: Since GH2 is still under development, plugin installation hasn't been exposed to end users in the same way its done in GH. This will likely change or improve over time. But at the time of writing this post, plugins (now .rhp files, not .gha) must be placed in the Components folder inside the package folder for the currently active GH2 installation (AppData\Roaming\McNeel\Rhinoceros\packages\8.0\Grasshopper2\2.0.xxxx-wip.xxxxx\Components), along with the rest of the vanilla plugins. Unfortunately this also means that every time an update is pushed to GH2, you need to reinstall/copy your plugins to the new Components folder.
I hope these provide some technical insights about the changes GH2 will bring. If you're interested in knowing more about advanced GH2 plugin development or want to jump start the process to port your plugins, feel free to contact me!