I’m not even sure where to begin here. So, let me explain what I’m after.
Let’s say we have an urban area where we want to separate certain areas for both safety or/and decoration reasons. What I’d have in mind would be using a geometry node that would take a basic flat mesh or, even better, cube that would determine the length, width, height and vertex colouring.
The profile of said island could be, maybe, determined by color ramp node? So we can customize the shape on a fly? Alternatively, it could can into consideration external curve instead.
Bonus - if there would be an option to make island with both round and hard edges, that would be awesome!
So the result could replicate concrete islands with grass/crust as in the image below
Here are a few hints :
If I understand correctly you want to generate these “grass island” mesh from a cube ?
Nothing more fancy ?
In theory this isn’t too much complicated ( complicated is a subjective word…) , but it depends on the level of refinement you’re looking for.
1/ basemesh :
The simplest is to start from a plane and have a fixed height, but it’s possible to also find the height of a cube . Two options here, either you make each grass island = 1 object, then the bounding box node will provide the dimensions of the cube.
If every grass island (cubes) are contained in the same object another method is need : raycasting from the bottom face to the top face will give you the height, but ti’s a bit more involved.
2/ contours :
You can convert a face to a curve with the mesh to curve node.
you can add roundness with the fillet curve node.
3/ profile :
Here some research is needed to see what kind of profile is needed , how to control them.
Maybe start with a simple quadrilateral curve object, and later see how to make that fancier.
filling the inside + vertex group :
If you don’t needs clean UVs but just a vertex color, then I’d take the beveled curve, convert it to mesh and extrude it twice.
If you’re really beginning with GN, take that as a learning exercise and don’t rush for the result, but try to explore each of these operations until you feel more comfortable.
Then try to focus on the end result and adding more option / refinement to your base setup.