Color-Banding Problem (NV RCs / DOT-3)

I have got a question about DOT-3 Bumpmapping via the Register Combiners. In my testing app, I see Color-Banding.
I compute N <dot> L and (N <dot> H)^16 with 4 general combiners and it seems that there is not enough precission (perhaps “rounding errors”?).
Or could it be, that my normal map is to exaggerated?

Any hints for me?

Btw. I´ve never looked into NVs Texture Shader, would that give better quality or where are it´s benefits?


The banding is from the limited precision and clamping of the combiners. If you want better lighting, look into texture shaders. Using a specular lookup works pretty good. HILO texture formats help a lot too. That is, a texture format with 16bit color components instead of 8bit. But the thing is, with a HILO texture, you can only get two color components at a time. Like your HILO texture format may only have for example R and B. It’s like they combine two color components together to get more color precision. Actually that’s probably really what’s happening.

But look into texture shaders, there are plenty demos around showing their use.