Brent Werness aka @R4_Unit tweeted about an algorithm he calls “Voxel Automata Terrain” that creates interesting 3D structures. He also provides some processing source code I was able to translate so I had to have a go at creating some of these myself.
These structures are created using a process similar to the diamond-square algorithm but in 3D. A 3D cube is repeatedly iterated and divided to leave these structures behind. I don’t really understand it beyond that so I cannot give a better explanation at this time.
The code for dividing the cube up is the first parts of Brent’s code. Mostly everything after the evaledges routine is display related.
For my images I use the states array to render solid cubes using the Mitsuba renderer. State 1 and state 2 cells can be shown or hidden and displayed using different colors.
I also setup a flickr gallery with more example images.
If you start the process without a random side and fill the initial base side with all state 1 or state 2 cells you get symmetric structures as a result.
I also tried extending the maximum possible cell states to 4. The rule arrays need to be changed to three dimensional. From some initial quick searches (a few hundred of the possible 4 billion rules) did not lead to any new unique structures, but it does add another color to the mix.
Here is a movie showing some samples with ncreasing levels of detail/recursion.
Voxel Automata Terrain are now available as part of the latest version of Visions of Chaos.
I have also added the option to export the Voxel Automata Terrain cube grids as OBJ files that can be imported into other 3D modelling programs.