Turning grid plane into 'diamond' mesh in Geometry Nodes

I’m not sure if this has been asked before but,
How do you turn the grid plane (left) into the ‘diamond’ mesh (right) in Geometry Nodes?
It doesn’t need to be precisely like that, essentially just (what I can only describe as) collapsing the vertices in an alternating fashion

In this example, I used the Un-Subdivide option with the value 1

My current solution is to just delete the points and it works fine for what I need since I don’t really need the edges and faces but I feel like it would be great to have those elements around

Probably not the most performant but should work for square grids:

Good luck!

7 Likes

Here’s a different approach using two Triangulate nodes to create the diamond structure and a Dual Mesh and Scale Elements node to “dissolve” the unwanted edges:



Diamond_Grid.blend (958.8 KB)

10 Likes

another approach would be just turn the square grid 45degrees … removing any geometry “out of bounds” either via math/location, or just a simple quick boolean.

Nebbermine: already stated. :smiley:

Yeah, i think that’s basically @zeroskilz solution if i’m not mistaken!

1 Like

indeed it is… i didn’t look closely at the nodes used. :smiley: my bad. :slight_smile:

2 Likes

I believe this is the simplest solution.

4 Likes

Tested this, and it works well for a simple grid although I couldn’t integrate it with the setup I’ve got going on; in which my grid size is driven by another object, and sometimes it will get deformed beforehand.

It’s very insightful, thank you!

1 Like

Tested this and I found it works really well with both setups that I have
I had a vague idea about using the triangulate and dual mesh nodes but I couldn’t work out the math in my head :sweat_smile: so this was very nice to see

You also nicely tackled that odd/even point count issue (I don’t know the correct term) that I stumbled upon in my initial solution that I wasn’t even aware of so thank you so much! This is the best answer I’ve found so far…

1 Like

So, I have these two setups that I’ve got going on and this works well with the first one which is a simple flat grid but not so much with the second one since the grid will get deformed beforehand and the merge by distance node doesn’t do very well
Thank you for the input!

You did not explained what your real world use case was.I cant tell what you are trying to achieve, my reply answers your initial question.

1 Like

Another solution could be inspired by the the other examples :grinning::

6 Likes

I’m so sorry that was a mistake on my part, I should’ve explained thoroughly. my setup was indeed very simple at the beginning and I thought to keep the question as broad to get different input from the community and yours was very helpful, thank you!


Thank you! this was very simple and and works very well with my setup.
If I were to use this in my setup and share them with others, how should I properly credit you?


I think I’m going to use it in my setup and then maybe share it with other people, how should I properly credit you?


I think I’ve found what I was looking for and I will keep all the answer for my later projects. All the respones have been helpful, thank you!
I will now mark this topic as solved

No need for credits from my side. Use it wherever you like.
But if i would have to choose between these solutions, i would totally take @Benny_G 's one! That’s really smart with the face inset and face neighbors comparison!

2 Likes

both answers are equally great, I couldn’t decide which one is better so I just had to pick one. if only I can pin multiple answer as the solution… maybe i’ll edit the question to add both answers, is it a good idea?

1 Like

No credits needed, just share it with everyone :grinning:

4 Likes