← All ideas
  • Published 23 Feb 2022

"Separate loose elements" geometry node request

A node that can separate all unconnected geometry in a mesh out into individual objects. For example, let's say I join 4 cubes and a monkey. None of them are connected, but they are all in the same mesh. Having a geometry node that separates these objects back into individual objects would be amazing.

Story of why I want this:

Recently did my first geometry nodes projects. In it, I had a large, simple subdivided plane with many points. I used a displacement texture and animated it to add a wave-like appearance to the plane. I then instanced cubes on each point. The cubes had a material that randomly assigned a color to each cube. This worked okay and gave me the effect I wanted.

Screen Shot 2022-02-23 at 1.52.24 PM.png

Here's where my problems started. I liked the random coloring but, I wanted to boolean out a section of the cubes in the center to place a logo there. I found that I can't boolean the cube itself as it will boolean all the cubes at once. I can't boolean the result as the cubes are all separate. I can "realize instances" and boolean the result of that, but then my cubes are all treated like one object and there is no random coloring.

I ultimately ended up manually deleting the vertices of my plane where I wanted the logo. It wasn't ideal as my cubes didn't have fancy cuts in them in the shape I was going for. It worked, but I'd like to be able to operate with booleans on a large group of instanced objects like this for motion graphics.

Screen Shot 2022-02-23 at 1.48.44 PM.png

I think it would be nice to be able to realize instances, boolean or do any operations, and then turn all disconnected geometry into individual objects. Screen Shot 2022-02-23 at 1.49.29 PM.png

80%

Development Status: Open

Upvote 4 Downvote 1
triguy
23 Feb 2022

2 Comments

mystpan1

As bestelix says, it is already possible in Blender 3.1: Monkey image 1

Also, Raycast lets you delete all geometry inside the monkey: Monkey image 2

1
bestelix

you can filter out those instances with a Proximity or Raycast node

1