http://www.youtube.com/watch?v=af-HNsT3RVE
Castle Story is an even better example of what I'm hoping to achieve, which uses a more complete smoothing system to create soft surfaces from voxel points (possibly the Marching Cubes algorithm). Here's a few images that show what I mean:
Patterns by Linden Lab is an example of simpler smooth voxel terrain, using only straight and diagonal surfaces. This approach might be easier for us, as we can simply add an optional subdivision system on top of it to create the smoothness.
But the general idea is simple: Some nodes would have a special flag that mark them as smooth. When used, they would no longer be rendered as blocks, and instead a simple combination of flat and diagonal surfaces is generated between the voxels. The level of subdivisions for the collision mesh and the visual mesh should be two separate settings in minetest.conf, so people can adjust them based on their computer's performance.
This might sound extremely difficult to do, but I don't actually think it is all that much. For the most part, we should only need to edit the paragraph of code that generates the surfaces for voxels. If we know the right algorithm, we should be able to create basic polygonal slopes, then add an optional subdivision counter. We might later want this to be accompanied by other features, such as gradual texture blending, but that's of course for another day.
My first question is if this feature can be accepted into mainstream Minetest. Obviously it won't affect existing mods or games and voxels will remain blocks by default, but the feature might change Minetest's position and direction (in my opinion for the better). If yes, then I'd like any hints as to where exactly in the code surfaces are generated for voxels, and any other tips you have on how this can be programmed. And of course, I also wish to know if anyone is willing to help with this, and what you all think of the idea and who else wants it to begin with.



