OpenGL 3.3 core profile will be our final target on all platforms. Until all our code is ready we can use 3.3 compatibility profile or "legacy" GL on platforms that don't support compatibility profile.
What can we do today to prepare? Set minimum requirements as close to 3.3 as possible.
|Windows||3.3 compat profile||3.3 compat|
|Linux||3.3 compat profile||3.3 compat|
|Mac||2.1||1.2||ARB_draw_elements_base_vertex, EXT_gpu_shader4, ARB_framebuffer_object, APPLE_flush_buffer_range|
This lets us simplify context setup code, guarantee certain features on certain platforms, and alert testers that "hey your GPU is old, you'll need to upgrade". I'd like to do this early in development to minimize surprises later on.
Eventually we'll get to this:
|all||3.3 core profile||3.3|
and life will be good!