PDA

View Full Version : 3D floating point texture in nvidia GeForce6800 ?



Yuan
07-26-2004, 10:19 AM
As in GPU-Programming, nvidia claims that GeForce 6 Series GPUs support 3D floating-point texture.
I got 'GL_INVALID_OPERATION' error with the following code:

[code\]
glGenTextures(1, &texName1);
glBindTexture(GL_TEXTURE_3D,texName1);
glTexImage3D(GL_TEXTURE_3D, 0, GL_FLOAT_RGBA16_NV, 16, 16, 16, 0, GL_RGBA, GL_FLOAT, array);
[\code]

Can anybody help me out?
Thanks a lot

NitroGL
07-26-2004, 10:48 AM
the NV_float_buffer extension only supports rectangle targets. Use the ATI_texture_float extension instead.

Korval
07-26-2004, 10:51 AM
The drivers may not support it yet. Also, a 16x16x16 texture at 16 bytes per pixel (assuming that it forces RGB to RGBA) costs 64MB. Perhaps the driver simply won't allow you to absorb a quarter of the driver's memory in a single texture?

<edit>
No way. I misread my calculator; it's 64KB. Never mind.

gking
07-26-2004, 10:54 AM
As Nitro mentioned, use the ATI_texture_float formats, instead of the NV_float_buffer formats. The NV_float_buffer formats are only supported for rectangle textures.

Yuan
07-26-2004, 11:47 AM
Thanks a lot!
I thought that nvidia and ati won't support each other. :)