PDA

View Full Version : GeForce4 Go: conformant GL_CLAMP mode?



Hampel
09-24-2004, 08:20 AM
I want to use the OpenGL conformant GL_CLAMP mode on a GeForce4 Go (driver 61.11), that is, I want to mix the edge texel with the border color 50:50 for fragments outside the [0;1] tex coord range.

However the border color is never used! The behavior is just like GL_CLAMP_TO_EDGE. :mad:

Some time ago I've seen the switch "OpenGL conformant texture clamp mode" (or something like that) in the display properties dialog; but now this option is not available anymore?!? :confused:

How can I force the conformant texture GL_CLAMP mode on a GeForce 2/2MX/2Go/4MX/4Go? :confused:

Best thing would be to use GL_CLAMP_TO_BORDER; but this is not hardware-supported for these chips and will bring me to software-emulation-land... :mad:

Korval
09-24-2004, 09:37 AM
Best thing would be to use GL_CLAMP_TO_BORDER; but this is not hardware-supported for these chips and will bring me to software-emulation-land... Which may be why the driver doesn't let you. I presume that the level of hardware you're refering to doesn't actually have conformant clamp behavior in hardware.

zed
09-24-2004, 12:11 PM
Originally posted by Hampel:

How can I force the conformant texture GL_CLAMP mode on a GeForce 2/2MX/2Go/4MX/4Go? :confused:
Best thing would be to use GL_CLAMP_TO_BORDER; but this is not hardware-supported for these chips and will bring me to software-emulation-land... :mad: i can confirm with the gf2 (+ i assume the others) CLAMP_TO_BORDER is not supported in hardware thus using it will make the framerate plumet prolly to under 1fps, nothing u can do about this.
>>but now this option is not available anymore?!?>>
check the advanced section of the dialog, or search the registry.

another possible option would be put a border on the texture yourself + use clamp_to_edge.
though u will prolly want to switch to nearest filtering + turnm off mipmaps.

personally i could never see why the gf2 didnt support clamp_to_border in hardware, i dont think it would be such a difficult thing to implement.

zeckensack
09-24-2004, 06:50 PM
Originally posted by Hampel:
I want to use the OpenGL conformant GL_CLAMP mode on a GeForce4 Go (driver 61.11), that is, I want to mix the edge texel with the border color 50:50 for fragments outside the [0;1] tex coord range.

However the border color is never used! The behavior is just like GL_CLAMP_TO_EDGE. :mad:

Some time ago I've seen the switch "OpenGL conformant texture clamp mode" (or something like that) in the display properties dialog; but now this option is not available anymore?!? :confused: "Conformant texture clamp" in the NVIDIA driver control panel does exactly this one thing:
Interpret GL_CLAMP the way it's supposed to be.

With very early NVIDIA drivers GL_CLAMP behaved like GL_CLAMP_TO_EDGE. There are, presumably, many applications that rely on this broken behavior (i.e. they specify GL_CLAMP even though they want GL_CLAMP_TP_EDGE). This is the whole reason this driver option exists.

So there are two possible explanations and two causes of action you should take:
1)the test machine had "conformant texture clamp" disabled. Go tell them otherwise and repeat the test.
2)the test machine was configured correctly. In this case, it is clearly a driver bug. Ask NVIDIA to fix this wrong behavior.