Falling Sand Engine

This is a very barebones project which runs a cellular automata on the GPU in real time. The simulation copies the behavior of sand particles by treating each pixel of an image as a particle. Each particle can either be air, sand, or out of bounds. If the cell below a sand cell is empty the sand cell will move down every frame. The the cell below is sand it will try to move diagonally down and right or down and left. This leads to the pyramid shapes that are seen in the video below. If the particle below is out of bounds the particle does not move.