Skip to content
This repository has been archived by the owner on Dec 6, 2021. It is now read-only.
Tom Svilans edited this page May 3, 2018 · 7 revisions

SpeckleBlender Wiki

About

Gut-wrenching prose goes here.

Usage

Usage is fairly simple, but for now is with a couple caveats:

  1. There must be an already created profile in your SpeckleSettings folder (AppData/Local/SpeckleSettings) with an authentication token. Although it is possible to create a profile and login using the Python client, this is not yet exposed in Blender.
  2. SpeckleBlender will take the first profile in this folder. This is hard-coded at the moment, but will change when the login system is properly implemented.
  3. Currently, only Mesh objects are supported. Anything else will be ignored. Curve objects could be supported in the future.

SpeckleBlender adds some operators:

  • Speckle - Import Stream : Choose from a stream in your profile and import all objects from that stream.
  • Speckle - Create Stream : Create a Speckle stream.
  • Speckle - Delete Stream : Delete a Speckle stream.
  • Speckle - Update Object : Updates the selected object if it is enabled for Speckle usage.
  • Speckle - Update All : Updates all objects that are enabled for Speckle usage.
  • Speckle - Upload Object : Choose from a stream in your profile and upload active object to that stream. This enables the object for Speckle usage and sets its update direction to 'Send'.

SpeckleBlender adds some Object properties:

  • Enabled : Enables the object for Speckle usage.
  • Send/Receive : Sets the update direction on a per-object level. 'Send' will update the remote object with local data, 'Receive' will replace the local object with remote data.
  • Stream ID : Possibly useless. Holds the Stream ID that this object is part of. Meaningless if the object is part of multiple streams.
  • Object ID : The ID of the object on the server.

SpeckleBlender adds some Scene properties:

  • Scale : Scale factor for incoming data. Outgoing data is scaled by 1 / Scale.
  • Update all : Triggers the Speckle - Update All operator. Currently non-functional.
  • Import stream : Triggers the Speckle - Import Stream operator.

Examples

Transferring texture coordinates and material from Rhino to Blender

This example is useful for quickly getting UV mapped geometry from Rhino to Blender with automatic material assignment.

Texture coordinates can be attached to an outgoing Speckle object by flattening the coordinates into a space-separated string of values, and converting it to a Base64-encoded string. Once attached to a texture_coordinates tag, they will be parsed by Blender into UV coordinates.

A material tag can be specified the same way.

Material tags in Rhino / Grasshopper

SpeckleBlender will look for a material tag with a name sub-tag in the incoming Speckle object. If found, it will look for a corresponding material with the same name in the Blender scene and create one if it doesn't find it. This material will be assigned to the incoming Speckle object.

Material linking in Blender

Clone this wiki locally