Plugin to get procedural geometry into ThreeJS

Hi. I need advice on a project I’m hoping to start.
I come from a game development background, where I’ve used Houdini engine to create procedural levels in Unreal and Unity. I’ve also worked for a company that creates models in 3DS Max then exports them to a ThreeJS website.


What I’m thinking of is a tool to load Blender objects made with geometry nodes into ThreeJS while keeping the parameters of the geometry nodes intact, so as to be able to adjust those parameters in realtime from within ThreeJS or a running Blender instance.

Houdini engine parallel

Keeping it analogous to Houdini engine, an instance of Blender would be running in the background. The webpage would communicate parameters to this instance which will process these nodes and generate geometry for consumption by ThreeJS.

Bridge mode

An easier way would be to create a Bridge between Blender and ThreeJS, where you could edit meshes in Blender and they would be sent instantly to ThreeJS. This way you would adjust the parameters and mesh in Blender, and see the result reflected in ThreeJS without having to go through exports.

If someone could give me their two cents on this matter I would highly appreciate it.

Here’s a link to the same post I’ve made on the ThreeJS forum if anyone would like to hear from that side: Tool to get Blender procedural geometry to ThreeJS without exporting

I’m by no means an expert in this topic, but my first stategy to research would be to (ab)use the renderer API which is also used to do realtime viewport rendering, so it can send 3d scene info to an external program.

You’d need some other means to get the parameters back though.

1 Like

I was guessing at a REST server. But I know some addons like 3D coat’s Blender integration can send data back and forth, so I’ll start looking through them to figure it out.

This reminded me of something I had bookmarked a while back. There is an experimental version of geonodes done in ThreeJS in the browser. It is very impressive, but there are not many details on licensing, etc. No doubt you could learn from it or get in touch with the dev.

1 Like