Tracing a Cellular Automaton
Visual artifacts such as ghosting are due to the gif encoder used.
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.
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).
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.