Color clamping on ATI

I use
to avoid color clamping, but this doesn’t work on ATI GPUs (program crashes on the corresponding line). Which extensions should I use on ATI video cards?

As far as I know, there are no alternatives to ARB_color_buffer_float. But you may be interested in this:

Program crashes? Did you check what the value of your function
pointer glClampColorARB? Is it not null, aka initialized correctly?

This code works on nVidia and crashes on ATI, that’s for sure. So, pointer should be OK.

No. You are supposed to check first if GL_ARB_color_buffer_float is supported before using it. You can call glGetString(GL_EXTENSIONS) (remember you can only make OpenGL calls if you have a valid current OpenGL context for your current thread) and parse its result or use another library that does the job for you (like glew).

The second part is to load the function pointer with a platform specific function from glx or glw or … (or again let glew do the job for you). Once the function pointer is initialized, you can use it.

To check quickly for available extensions on a system:

  • on Linux: glxinfo
  • on Windows: You can download and use GLview
  • on Mac OS X, With Xcode installed, go to Macintosh HD->Developer->Applications->Graphic Tools->OpenGL Driver>Monitors->Renderer Info-><name of the OpenGL driver>->OpenGL Extensions

What card and driver?

Extension is not supported by this card (due to GLView utility). GPU is Radeon X1800, I’ve tried the last Catalyst drivers. Can you recommend me any alternative extensions?

As far as I know, there are no alternatives to ARB_color_buffer_float :slight_smile:

Check extensions list. I think something is wrong.