add double buffering, lightning, 3D cubes