Spring ‘24 Update Summary
On March 5th, we organized a webinar to showcase some of the ShapeDiver feature highlights from the last few months, such as Rhino 8 support, new online platform features, and viewer post-processing effects, to name a few.
If you joined us and enjoyed the discussion, thank you! You will also be happy to know we plan to make this a bi-annual event. We look forward to seeing you again in the fall later this year, so make sure you are subscribed to our newsletter to get the event invite. On the other hand, if you missed the meeting or want a refresher, you are in the right place for a quick catchup on the topics we discussed.
1. Rhino 8 support on ShapeDiver
Since late 2023, we launched a new Rhino 8 backend infrastructure, available to most ShapeDiver clients as a Beta feature. From day 1, the Rhino 8 system came with many of the advantages built-in this new version of Rhino:
- The new ShrinkWrap component enables powerful new mesh workflows, especially for ShapeDiver users working with 3d printing. Export clean, watertight meshes directly from your ShapeDiver applications!
- Rhino 8 supports importing new file formats, among which (finally!) glTF 2.0. As a result, the ShapeDiver Import Geometry component can also import glTF files.
- On the file export side, the new components from the Rhino category now allow easy creation and manipulation of annotation objects, dimensions, and hatches, which can all be included in exported documents using the ShapeDiver Export components.
- Many operations, such as offsets and mesh boolean operations, became more reliable and much faster, both crucial in web applications built with ShapeDiver!
And that’s not all! My colleague Edwin has explored the possibilities of Rhino 8 in-depth in a series of LinkedIn posts. If you want to learn more about them and how they enhance the experience of ShapeDiver users, follow him for many other insights!
However, arguably, the most important feature shipping with Grasshopper in Rhino 8 is the new scripting component. Both C# and Python versions support external libraries (through Nuget and PyPI packages), allowing for powerful new extensions of Grasshopper's possibilities.
Support for the new scripting component took much effort from our team in collaboration with McNeel. Downloading and installing remote packages on the ShapeDiver servers comes with performance, security, and reliability considerations.
In February, we were happy to finally support scripting on our Rhino 8 system! In the next section, we give a first few application examples.
There is even more potential for ShapeDiver to deeply integrate everything Rhino 8 offers. In particular, stay posted for extended file I/O features and formats, as well as native block support for exported files.
2. Stream I/O
As a solution to many user requests regarding file I/O with ShapeDiver, we added new stream import/export components to the plugin. Those allow users to work with virtually any file format stored in memory stream objects. In practice, this opens up many new I/O possibilities, especially when combined with the new Rhino 8 scripting component. Here are two first examples:
- Using the NPOI Nuget package and a few lines of code, one can extract all the data needed from Excel files and, on the other hand, also create Excel worksheets to be exported from Grasshopper.
- Using the standard compression libraries, one can parse and build Zip files as memory streams, effectively allowing importing and exporting multiple files at once.
Read more about the Import Stream component and the Stream Export Options and see a quick demonstration of those workflows here.
Bonus I/O feature: As a small but much-requested feature, we added support for nested layers in files imported and exported through the ShapeDiver I/O components. The full layer path (for file formats supporting layer hierarchy) is mapped to the nestedlayer attribute. Read more about this feature here.
3. Online platform features
Among the many additions and improvements from the last few months, the following highlights are worth mentioning:
- New options are available when sharing models with ShapeDiver users. While it has been long possible to share various permissions (viewing, exporting, seeing analytics…), it is now also possible to share the ability to download the Grasshopper definition, as well as to consume the model using desktop clients.
- Our classic feature to import and export model parameter values as JSON files got a significant upgrade: it is now possible to import directly in Grasshopper the JSON files exported from the platform. This gives model owners a convenient way to communicate with their audience, as well as a powerful debugging tool.
- It is also possible to import Saved States directly in Grasshopper!
- A wide range of new options allow you to customize the layout of the model view and iframe pages of your models. Several sections (Saved States, Attribute Visualization, Desktop clients) can now be hidden if desired. Additionally, the Export section can be merged with the parameters section, where all parameters and export buttons can be re-ordered and grouped together.
- The behavior of the parameters panel can also be influenced, with such options as disabling parameters during parameter updates, providing a better user experience for models with heavy computations.
4. Post-processing effects for the online viewer
The online viewer now lets you choose between different post-processing effects to improve the visualization of your models. In particular, two ambient occlusion algorithms are available to cover a wide range of use cases, from housing to furniture models, as well as a bloom effect that shines especially in the context of jewelry.
In this LinkedIn post, my colleague Michael presents those effects and more niche ones, such as Depth of Field, Tilt-shift, or Pixelation.
5. List of new supported plugins
The list of third-party plugins supported on ShapeDiver is always growing, with now more than 40 plugins up and running on our servers! Among the recent additions, we strongly recommend taking a look at some of them:
Swiftlet is a powerful plugin allowing you to make REST API calls directly inside Grasshopper. It contains many components that make it easy to build requests including query parameters and authentication headers, and all the tools needed to parse the responses. In the webinar, we reviewed examples connecting to ChatGPT and the Google Sheets API among others.
Bitmap+ and PDF+ enhance the existing possibilities in ShapeDiver to create and manipulate images and PDF documents.
Beaver includes advanced tools for timber engineering workflows (available on request).
- Takeaways
We're very excited to finally share this news with you. We're looking forward to receiving your feedback via our forum or by joining our newly announced Community Standups.