Beginning in Mac OS X v10.6, support was added for OpenGL 2.1, which has many new extensions for added functionality. Mac OS X v10.7 added support for Open GL 3.2 Core, which added more extensions as baseline features. The newest version of OpenGL deprecates routines and mechanisms found in OpenGL 1.n
and OpenGL 2.n
, including the removal of the fixed-function pipeline that was the main approach to developing OpenGL 1.n
applications. An OpenGL 3.2 application requires you to create your own shader strategy rather than assuming that a standard graphics pipeline will do everything. As a result, for simple applications you need to write more boilerplate code than was required by previous versions of OpenGL.