Speckle is the data infrastructure for the AEC industry.
- Object-based: say goodbye to files! Speckle is the first object based platform for the AEC industry
- Version control: Speckle is the Git & Hub for geometry and BIM data
- Collaboration: share your designs collaborate with others
- 3D Viewer: see your CAD and BIM models online, share and embed them anywhere
- Interoperability: get your CAD and BIM models into other software without exporting or importing
- Real time: get real time updates and notifications and changes
- GraphQL API: get what you need anywhere you want it
- Webhooks: the base for a automation and next-gen pipelines
- Built for developers: we are building Speckle with developers in mind and got tools for every stack
- Built for the AEC industry: Speckle connectors are plugins for the most common software used in the industry such as Revit, Rhino, Grasshopper, AutoCAD, Civil 3D, Excel, Unreal Engine, Unity, QGIS, Blender and more!
Give Speckle a try in no time by:
- for help, feature requests or just to hang with other speckle enthusiasts, check out our community forum!
- our tutorials portal is full of resources to get you started using Speckle
- reference on almost any end-user and developer functionality
The Speckle UI can be found in the 3d viewport toolbar (N), under the Speckle tab.
Head to the 📚 documentation for more information.
We officially support Blender 3.3 and newer, on Windows and Mac.
Please follow our installation instructions on our connector docs
Once enabled in Preferences -> Addons
,
The Speckle connector UI can be found in the 3d viewport toolbar (N), under the Speckle
tab.
- Available user accounts are automatically detected and made available. To add user accounts use Speckle Manager.
- Select the user from the dropdown list in the
Users
panel. This will populate theProjects
list with available projects for the selected user account. - Select a model and version from the dropdown menus.
- Click on
Receive
to download and convert the objects from the selected model version. The objects will be linked into a Blender Collection, named<PROJECT_NAME> [ <MODEL_NAME> @ <VERSION_ID> ]
. - Click on
Open Model in Web
to view the model in your web browser.
The Blender Connector is still a work in progress and, as such, data sent from the Blender connector is a highly lossy exchange. Our connectors are ever evolving to facilitate more and more Speckle usecases. We welcome feedback, requests, edge cases, and contributions!
The full matrix of supported Blender and Speckle types can be found here
-
Speckle properties will be imported as custom properties on Blender objects. Nested dictionaries are expanded to individual properties by flattening their key hierarchy. I.e.
propA:{'propB': {'propC':10, 'propD':'foobar'}}
is flattened topropA.propB.propC = 10
andpropA.propB.propD = "foobar"
. -
If a
renderMaterial
property is found, SpeckleBlender will create a material named using the sub-propertyrenderMaterial.name
. If a material with that name already exists in Blender, SpeckleBlender will just assign that existing material to the object. This allows geometry to be updated without having to re-assign and re-create materials. -
Receiving vertex colors is supported. The
colors
list from Speckle meshes is translated to a vertex color layer. -
Receive/Send scripts. Allow injecting a custom python function to the receive/send process to automate any blender operations
Upon first launch of the addon, the Speckle connector installs its SpecklePy dependencies in %appdata%/Speckle/connector_installations
on Windows and ~/.config/Speckle/connector_installations
on Mac.
This is done through our installer.py
. Through pip, we install the correct version of each dependency for your blender python version, host OS, and system architecture.
As such, an internet connection is required for first launch of the connector.
Other blender addons may require dependencies that conflict with specklepy. In these cases, one or both addons may fail to load. If you suspect you're seeing a conflict, Please uninstall other third party addons one at a time to identify which addon is conflicting.
If you find an addon that conflicts, please try using a different version of that addon (newer or older).
If you can't find a version of an addon that works, please let us know on our forums the name of the addon, the versions you've tried, the version of the Speckle connector you've tried, and your OS (win/mac/linux).
Please make sure you read the contribution guidelines for an overview of the best practices we try to follow.
The Speckle Community hangs out on the forum, do join and introduce yourself & feel free to ask us questions!
Unless otherwise described, the code in this repository is licensed under the Apache-2.0 License. Please note that some modules, extensions or code herein might be otherwise licensed. This is indicated either in the root of the containing folder under a different license file, or in the respective file's header. If you have any questions, don't hesitate to get in touch with us via email.
Thanks to Tom Svilans (Github) for the original v1 contribution!