Geometry Nodes

The nodes modifier project is the first part of the Everything Nodes Project, and it has officially started in October 2020. You can read more about it in the development blog.

The initial focus of the team is to support the features required by the Sprite Fright project. That said I would love to see what the community can do with it as well. Feel free to use this space for that.

Feedback on the state of the tools is welcome. Be aware that the team is not equipped to handle feature requests though.

To test you can build the geometry-nodes branch yourself. Or download the latest official build (updated every now and then).

What is ready for testing:

  • Expose node group settings in the modifier stack
  • Transform node
  • Boolean node
  • Point Instance node (only works in a point cloud object).
  • Point distribute

Sprints:

Documentation:

Disclaimer: Remember to keep this topic Blender-only. Posts mentioning or sharing features from other software will be deleted.

24 Likes

Thanks a lot for these bits and pieces … a quick test of playing with Point Distribute and Point Instance nodes

8 Likes

In my previous video I had to use performance heavy Booleans operation to change forest boundaries as well as to cut through forest. After an update to Geometry Nodes branch, it’s whole another story, I can do this purely just with Weight Masks now.

2 Likes

what program did you use to draw this?
image

I used Miro (online tool).

3 Likes

That sounds very familiar to me :smiley:

7 Likes

Okay. This is very exciting for me. I have been waiting for this moment for a very long time, when I can try a build with new tools.
Simple nodes with Boolean, subdivision, transform, edge split, it’s simple and straightforward.
But the Point Distribution and Point Instance nodes puzzled me a little. I went to watch a video about Geometry Nodes and wondered why everything is so complicated?

  1. Geometry with the Point Distribution node turns into what? Emiter? Points cloud? Or the geometry turns into a Point that distributes something.
    Then the Point Distribution node connects to the Point Instance and the Emitter or Point that distributes something turns into an Instance (a copy of something).
    I don’t understand the logic. Only two nodes and it’s incredibly difficult to understand.
  2. Why, in order to distribute some object on the surface of the cube, do you need to go to the Object Properties panel and select instancing there, but not in the node editor?

Make an understandable Emitter choice, particle choice, way of distributing particles over an object etc.
For me personally, the current system is already overly complex, although it consists of 2 nodes.
I understand that this system will be convenient for mathematicians, but I do not know mathematics, unfortunately.

Only because this workflow isn’t complete, we’re planning to handle instance creation inside the node tree.

These are the “building block” nodes. Eventually these will be exposed as a higher level node or maybe even as a modifier that should be easier to use, at least simpler at a glance.

3 Likes

Where I should post crash report and should I?

You can just make a bug report. Just add the “Geometry Nodes” project as a tag.

1 Like

If you got this from my comment from Blender Today, know that this is not necessary anymore, since yesterday’s commit you can choose an object to instance inside the Point Instance node, check this out

5 Likes

HooglyBoogly, Miro_Horvath It sounds promising. thanks)

Created with the point distribute node

Same geometry node group. But this time there is a weld modifier (merge verts by distance) in the modifier stack.

4 Likes

Playing around with mixing weight maps

2 Likes

yeah Weld modifier is pretty handy when you need to filter out points too close each other. I use it quite often to get rid of trees growing unnaturally close to each other. I hope Weld modifier will be added to geoNodes soon.

2 Likes

I think using weld modifier for that feels like a bit of a hack; not that it doesn’t work, but if you want to keep the point count at a specific amount you have to fight with the density amount vs how many points get welded.

I think an easier solution would just to have something like “relax iterations” built into the node. Perhaps some different distribution methods too maybe? Who knows, this is still all very early. Loving it nonetheless!

2 Likes

Hopefully there will be something like blue noise distribution to get a nice non overlapping coverage of points. Would be good if there was an option to be scale aware, so that if a scale attribute is added to points, it can use the point scale radius/bounding box to avoid intersections.

Not sure how this is done, and if it is some form of circle packing, but the new H18.5 scatter tools allow this. No doubt it is less performant but should be an option, especially for a convincing scattering of pebbles, foliage etc. especially when the density and scale are driven by procedural noises.

3 Likes

That’s exactly what I had in mind for different distribution methods. And for performance/other scenarios, giving the option for other things would always be nice!

1 Like

Miro_Horvath, Bobo_The_Imp, this is exactly the task I faced when creating the bamboo ends texture. Distribution of points, random and even, without crossing points.
This example can be used to test this node system.

2 Likes

I have made an example of procedural table. It’s not the way which people would like to model but it’s good to know that Geometry nodes already are capable of doing something like that.

13 Likes