basic opengl retained mode