Voxel terrain

Voxel terrain with godot and rust

See the video here!

This is a bit of an abandoned project, as I ran into some issues I didn't bother to fix, and later lost interest in it. The terrain in the video uses marching cubes with skirts for meshing, which attempts to hide the LOD cracks you get with octreee lod.

Surface nets

I later wanted to switch to naive surface nets, which places the vertice inside the cell, instead of on the cell edges. This results in a better mesh quality. The downside is that this makes skirts a lot harder to do. Below is what it looks like without any of the skirts

No skirts

Here I also rewrote the LOD system in rust, which makes it a lot faster. The downside here is that the gaps are clearly visible.

Skirts for surface nets require a lot of edge cases that I didn't manage to figure out, as instead of just moving them down a bit to hide gaps, you also need to extend them to the face of the chunk, then add the skirts. This makes it a lot harder to do nicely

Skirts but failed

I think a better solution would be to use geomorphing, aka also store the lower lod vertices for each vertex in the mesh, then blend based on distance. This would give smooth transitions, at the cost of requiring more of the voxel grid to overlap.