Make the Grid geometry node more flexible
I have a few issues with the node as it currently is:
-
It is two dimensional and locked to X & Y
- If you need it in Z direction it needs to be manually rotated
- If you need a 3D grid that is not supported
- A line is currently not a valid grid: The grid goes from 2 to n vertices, so if i want to create a dynamic asset that support 1 to n , i need to create a special workaround for the 1 case.
-
It does not support different layout modes like the Line node does
- Line has either Offset or End Points
- Grid is neither and has a size but cannot be directly positioned between points. To me the modes that Line offers have been more useful.
So the concrete suggestions are:
- Add a Z dimension
- Allow 1 vertex in any of the axes. So it can either be a point (all axes have 1 vertex), a line (2 axes have 1 vertex), a 2D grid (1 axis has 1 vertex) or a 3D grid.
- Offer different layout modes, especially offset and end point based (this would be like min/max of a bounding box).
(All of this could also be achieved by having an Array node that supports offset or end point based layout. A single point could be duplicated into a line, a line into a 2D grid and a 2D grid into a 3D grid. Unlimited power!)
Edit : I just noticed that the current name Grid is also misleading. It is actually a plane because the node creates edges and faces. I also favor the suggestion by hobblin to then add the ability to control if/where edges or faces are created.
2 Comments
After having done my first attempt at procedural object instantiation using a grid I can't agree more. Remove the line and cube primitive and just have that as a special case of the grid along with flags for where to put edges and faces (connect neighbours in X/Y/Z direction, make faces for none, all or outer shell only)
grid on volume mesh