项目作者: Jaminima

项目描述 :
3d Cellular Automata rendered using an efficient raymarching algorithm.
高级语言: C++
项目地址: git://github.com/Jaminima/Cellular-Automata-Traced.git
创建时间: 2021-03-10T21:49:07Z
项目社区:https://github.com/Jaminima/Cellular-Automata-Traced

开源协议:MIT License

下载


Tracing a Cellular Automaton

Visual artifacts such as ghosting are due to the gif encoder used.

The Evolution in pictures


First B/W Rendering

Automata composes of simple booleans to store state.

Renderer uses very a simple fixed ray marching algorihm.




Flat Rendering of Squares


Automota booleans swapped for RGB values.

Renderer updated to support the new color space.





Squares Have Visible Depth


By reducing the increment size of the ray marching we can more accuratley detect collisions.




Smaller Rendering Steps


Further reduce incrment to get a finer quality of image.




Render Using More Efficient Technique


By detecting possible {x,y,z} intersects we can ensure that each ray march will be calculating a unique collision.
Rather than possibly hitting the same empty square many times over while marching through its volume.





Cellular Rules are Applied


Simple rules are applied to each square every second, using their neighbours states to determine its own.




View Distance Effect More Visible


A thatched grid pattern becomes visible on squares at the edge of the render distance.

The exact cause of this is unkown (for now).




More Visible Rules


Cells dissapear and new white cells appear into the world.




Average Color for new cells


Brand new cells use the average color of its neighbours.




World Border


Border Effect at the edge of the world




Chaoticly Growing Automota


A rather interesting growth from a small original set of cells.



Reduced Tracing Aliasing

To allow reduced tracing to function, it is neccesarry to fill in blanks around each ray. This causes a fuzzy effect but gains us 7FPS on 35FPS. The effect is shown below. Original Left, Reduced Right.




Flying Round The World


An explore of the evolving world