Cellular Automatas in C++ w/ OpenGL

    The soniCA program generates and displays a Cellular Automata using OpenGL.  It is written in C++.  Right now, the program only covers 1-D, 2 state Cellular Automata.  However, I hope the code was written in a manner that will make it easy to extend the infrastructure to any Cellular Automata.
    The user has control over the behavior of the Cellular Automata through several keyboard commands.  These are:
r - decrement the rule by one.
R (shift-R) - increment the rule by one.
s - toggle the scrolling behavior
w - toggle the "wiping" behavior -- instead of rerendering the CA one stage at a time, an entire screen is recalculated and then rendered.
d - increase the delay between state updates
D (shift-D) - decrease the dealy between state updates


Converted by Mathematica      May 6, 2001