Speckle Blender

Hello Speckle World !

I’ve been following Speckle for some time now … and recently, I wanted to give a try with the Blender plugin, but without great success. Does anyone knows how to work with it ? thanks !

Plus : I’ve been experimenting flow-based modeling with the Verse server, have look ! : GitHub - rvba/echo: Joining the dots

cheers !


1 Like

Hello @rvba! I think questions about blender should be directed to @TomSvilans, who has been AWOL for a while (he might be on holiday!)…

I’ve never heard of the verse server before, will check it out!


Sorry, I’ve been out of the loop for a bit and am on holiday currently. I’ll try to make some time to check it out soon.

In the meantime, can you describe your limited success so far? Are you using Blender 2.79 or 2.8? I have started to adapt it to Blender 2.8 but I don’t think I made any public releases yet. Apologies again, will return shortly.

Hey Tom, thanks for answering.
Here’s what I’ve got so far :

  • A Speckle server up and running
  • The Blender plugin installed (2.79)
  • I can see the operators with the spacebar

I’ve tried the “Speckle Add Account” but I’m stuck here…
What sould I do next ?
If you’re in holliday, there’s no need for immediate feedback !
Thanks fo helping

Hi @rvba,

I’ve created a separate branch for Blender 2.8: GitHub - speckleworks/SpeckleBlender at 2-80

Take a look at that and see if it helps. I’m not sure how much time I will have to work on the 2.79 integration. Is this important? One of the caveats with the older 2.79 version is that there should already be Speckle accounts on the computer. This is fixed in 2.8 and could probably be back-ported, but I’m not sure how to gauge interest in a 2.79 branch…

Eventually I will merge the 2.8 branch into master, barring violent protesting.

Also, in 2.79, there should be a tab on the left, in the toolbar, called Speckle. This should contain more useful UI elements for loading accounts, importing streams, etc.

Hi All,

Hope its ok to post on the end of this thread!

I’m currently working on a workflow from Revit to Blender and back to Revit. So far so good as I’ve got the Revit model and all its parameters into Blender.

I’m now at the stage where I’ve updated one of the parameter values and am going back into revit and am getting an error.


Any help is much appreciated!

Hi @dodowd! This is lossy interop hitting it. When you get elements from Revit into Blender, because Blender does not have the concept of “Wall” or “Beam”, so the elements are baked in Blender as Meshes.

When you get them out again into Speckle from Blender, they will be Meshes - even if they will have the params in place. I don’t think the workflow is possible without some advanced hacking - unless maybe @TomSvilans has some better ideas :grimacing:

@dimitrie is correct here. When you upload to Speckle, it is uploading as a Mesh by default, since that is what Blender works with.

The SpeckleBlender add-on should retain all the incoming properties, however, so it might be possible to try to rebuild the object as whatever it came in as, though this might get tricky to do automagically.

However, with the last release, there is the option of also injecting a Python script between the wrangling of Blender objects and their conversion and uploading to Speckle. It would be possible to do a custom conversion here, based on the custom properties that should be able to describe the object as it came in (i.e. Wall, Beam, etc.)

1 Like

Sorry, it’s not in the last release, but in the current head, so grab it from the repo if you want to try it out.

Here is some ad hoc documentation:

  • Create a new text block in the script editor.
  • Create a function called execute that takes two arguments - scene and object

  • Make sure it returns a Blender object
  • Set either the Download or Upload field to the text block (the list should contain <none> plus whatever text blocks you have)
  • When you download / upload objects, it will execute the function for each object.

I’ve just realized that the upload script doesn’t affect what is uploaded to the Speckle stream, which is where you would want to inject a custom conversion for your Revit objects. I will try to address this soon.

1 Like