Macs are up to OGL 3.3 now

Macs now have support for OGL 3.3 (or rather, have had for a while), up from 3.2. That means that we can now enjoy some “new” nice features:

  • Sampler objects! Texture data is stored in texture objects as before, but how the texture is read (filtering, clamp mode, lod levels, etc) is controlled by a separate bindable sampler object, leading to cleaner set-up code.
  • GLSL vertex input layouts and fragment output layours! No need to query locations anymore, you can set them directly from GLSL: [icode]layout(location = 0) in vec3 position;[/icode] and [icode]layout(location = 0) out vec4 fragColor;[/icode]
  • Boolean occlusion queries, that are faster than occlusion queries that count the total number of samples that pass since it can stop occlusion testing after a single sample passes.
  • And last but least: Timer queries, allowing my GPU profiling to work on Macs.

Since Macs are the lowest common denominator, it’s time to update your OGL code!

Some Linux Open-Source drivers are still stuck on lower versions (I’m on OpenGL 3.0. Might try the proprietary ones and see if there’s any change)

Newer macs even support opengl 4.1 since maverics, but they are still not under wide use.

@HeroesGraveDev

Why not install the drivers provided by nvidia or ati? Proprietary drivers doing work for me too. With latest nvidia drivers I’m fine on ubuntu.

Probably because those drivers aren’t open-source, and on some linux-distro’s (Arch Linux f.e.) installing those drivers involves tons of work and mess up everything.