You may be familiar with Conway's Game of Life, which is probably one of the most famous examples of cellular automata. It is remarkable because from a very simple set of defined rules, very complex behavior can emerge. It is also Turing complete. Multiple Neighborhood cellular automata expands upon the simple rules of Conway's game, by determining cell state based on the average state of multiple, concentric, possibly differently shaped neighborhoods, rather than a single, fixed neighborhood like in Conway's. The ultimate result of this more complex definition of inputs is an equally more complex range of possible outputs.
This project showcases one such instance of multiple neighborhood cellular automata, where the GPU's parallel processing capabilities are leveraged for highly efficient computation through the use of GLSL fragment shaders.