I have met a strange problem, which seems specific to ATI hardware.
My config is X800 PRO/GTO, Catalyst 6.4.
I create a pbuffer, WGL_TYPE_RGBA_FLOAT_ATI, using only 32 bits in WGL_RED_BITS_ARB (hence, I get pixel format no 70: OGL, 32 bits R, 24+8 z/s, pbuffer, swap undef, ICD).
I simply clear the buffer with a float value and when I read it back using a glReadPixels, I don’t get that value: I get a strange interpolation between 0.5f and 2.0f, otherwise I get a black screen (same result if I go through a render texture and then display it).
If I create the pbuffer using 32 bits per component (pixel format no 66: OGL, 32 RGBA, 24+8s, pbuffer, swap undef, ICD), I get the correct floating point values reading back pixels.
The floating point buffer operations work on NV hardware, using WGL_FLOAT_COMPONENTS_NV. So, I’m wondering whether there’s something that I missed specifically for that buffer or not, or may this be a driver bug ?
Anyone an idea ?