omg opengl still has some stupid in it