Floating point formats in opengl

We are trying to program with ARB_fragment_program,
and we can’t seem to figure out, how to tell opengl to use floating point texture formats as the internal format.

If we, for instance, tell it to use RGB16 as internal format, will it automatically use floating point representation if it is available on the card?

And what if we want something 32 bit floating point format, how can we get that?


I think a new extension is necessary to achieve this. Currently, for NVIDIA’s NV30 there’s the NV_float_buffer extension. There’s no ARB extension yet.

On ATI’s 9700 it’s the ATI_texture_float extension, however it seems to be rather incomplete right now and there isn’t a spec for it yet.