we don't really need OpenGL in this demo