Works on Mac, OpenGL 3.2, more conformant code