Possible to Bevel Geometry Nodes Group Output?

I would like to bevel my data. The problem is that the data starts at roughly 0 so the bevel distance is very short. If I undo clamp, the first bits of data appear chunkier than they should.

I would like to create a vertex group where any cube shorter than a value is placed in a vertex group.

These cubes

So I have my output node here set to go to 'Group' vertex group.

But when I restrict my bevel to the Vertex Groups nothing happens.

I've tried changing the output from boolean to float. Inverting the Vertex Group. Changing it to weight. None of these yield results.

Is this possible?

Yes, you can actually solve this with Geometry Nodes (at least in version 3.2).

The Basic Idea

For this you would just have to use Store Named Attribute to store a boolean value into the geometry (in the point domain).

But you have to create a vertex group in the underlying geometry first, because only then you can select the vertex group in the bevel modifier.

The gray cube is the existing geometry, and the green cube was created with GN

Important:

However, the whole thing only works if at least a single vertex of the original geometry also ends up in the Group Output!

If this step is not observed, some stupid bug probably comes into play once again, which apparently prevents the geometry created in Geometry Nodes from being processed correctly by the subsequent modifier as well.

Also, the node Join Geometry must first be fed with the original mesh, and then with the geometry created in GN. The order is also crucial here!

Bug reported: https://developer.blender.org/T100042

Solution 1

If you take the above approach, then you can solve this as follows:

Here I first instantiate cubes and scale their height with some random values.

To be able to select the edges, however, I have to subdivide the mesh with Subdivide Mesh, because otherwise I can't exclude the lower edges in the selection.

With a little boolean logic I can filter out the edges that should be rounded.

To avoid the bug described above, I built all this on a canvas, which I put into the node Join Geometry before the generated geometry.

Solution 2

However, there is a simpler solution, as I have just discovered:

This works very well if you can live with the fact that the cubes have no faces on the bottom.

Here I simply extrude a square.

Since you also want to have the side edges rounded, all edges are simply put into the vertex group and then rounded with the Bevel modifier.