how to get rid of GL_ARB_compatibility

I was confused when I read that in 3.1 they got rid of the fixed pipeline but at the same time my fixed pipeline code worked flawlessly with my 3.2 driver.
I just found out it is because this GL_ARB_compatibility extension being ‘enabled’ by default.

Since I’m trying to learn how to use shaders and in general the new specification, I was wondering if there is any way to ‘disable’ this compatibility extension.

If you are creating a 3.2 context with ARB_context_create, then you should use the CORE_PROFILE parameter.

Sorry I forgot to mention I’m using SDL 1.2, and I’m not creating the context myself (I don’t even know what a context is really…), so it seems SDL is taking care of that.

I found the following paragraph on the red book:

Also this comment from

These are the instructions mentioned above on how to setup a 3.x context with SDL 1.3:…L%28C_/_SDL%29

Although SDL1.3 is still under development I guess thats the way to go, I’ll give it a try later, I hope it’s stable…If you have any suggestions or comments, just let me know,


I had to do the same thing and SDL 1.3 worked just fine for me. There are a few API changes that I ran into. In particular, SDL_GetKeyState was removed, replaced by SDL_GetKeyboardState.

  • Chris

This seems to be an old opengl joke but I just found it … still laughing my ass off…