Rhino Energy Prediction Plugin is designed to support architects in making energy-informed design decisions early in the building process. The plugin enables users to create or modify building models and receive predictions for heating and cooling loads using a machine learning (ML) model. Architects can gauge building energy performance early (concept stage) using the Rhino Energy Prediction Plugin. The plugin embeds a self-contained ONNX runtime directly in Grasshopper.
-
Model Initialization
Reads an ONNX model file path and sets up anInferenceSessionthat exposes each input tensor’s name, datatype, and shape. -
Real-Time Inference
Packs Grasshopper inputs into dense tensors, executes the ONNX model, and returns the first element of the output array as an energy load estimate. -
Automatic Feature Extraction
Companion Python script reads 3D building geometry and computes features such as roof area, window-to-wall ratio, floor area, and number of stories. -
Pure C# Runtime
Runs entirely in .NET via Microsoft’s ONNX Runtime—no Python interpreter required at inference time.
-
Component Initialization
The plugin reads the ONNX model path from the Grasshopper input.
It then creates anInferenceSessionand retrieves input tensor metadata. -
Input Packing
Grasshopper values are loaded into dense tensors that match the ONNX input shapes. -
Model Inference
The plugin runs the ONNX model with the packed inputs and receives an output array.
The first element of that array is sent to the Grasshopper output. -
Feature Extraction Script
A Python helper extracts building features automatically by classifying layers namedWall,Slab,Window, andRoof.
- Download the
VIP_Energy_Pluginfolder. - Copy it to your Grasshopper Libraries folder:
C:\Users\YourUserName\AppData\Roaming\Grasshopper\Libraries - Launch Rhino and open Grasshopper.
- Drag the VIPPlugin component from the Params tab onto the canvas.
- Provide the ONNX model file path to the component input.
- View the energy load prediction on the second output parameter.
- Open Rhino and start Grasshopper.
- Place the VIPPlugin component and connect the ONNX model path.
- Sketch or import a building mass in Rhino.
- Run the feature extraction script to compute geometry parameters.
- Grasshopper packs the inputs and runs the ONNX model.
- Inspect the real-time energy load estimate.
- Rhino 7+ – Plugin host environment
- Windows OS – .NET and Rhino SDK compatibility
- .NET Framework 4.8+ – ONNX Runtime support
- Python 3.8+ – Feature extraction and model conversion scripts
- ONNX model file – Trained energy prediction model
- Rhino SDK (C#) – Core plugin development and geometry handling
- Grasshopper (C#) – Dynamic component architecture
- Microsoft ONNX Runtime – High-performance model inference
- Python – Building feature extraction and
.joblib→.onnxconversion - scikit-learn / sklearn-onnx – Model training and conversion
act -j build -P windows-latest=-self-hosted
-
Real-Time EUI Feedback
Provide energy use intensity updates as users modify height, WWR, and story count. -
Flexible Model Inputs
Detect parameter names and types automatically to support multiple climates and typologies. -
Multi-Format Support
Add seamless handling of both.onnxand.joblibmodels with built-in feature mapping. -
Map Integration
Link with an energy prediction map to import existing building geometry and simulate retrofits. -
Custom Tab
Give PlugIn standalone VIPEnergy tab so that future energy related plugins that work in the Rhino/GH environment may be added to this parent group.