On Thu, 2 Dec 1999, Doug Rabson wrote:
> > Per-pixel lighting ("per fragment lighting" in OpenGL parlance) is the
> > solution - but hardware rendering engines don't do that (yet) because it's
> > a LOT more math. Phong shading and per-pixel lighting are really just the
> > same thing.
>
> Phong shading can still have mach banding. To get rid of this, just enable
> dithering.
Correctly implemented Phong shading will only mach band where there would be
a mach band in the real world.
Dithering doesn't help - this is nothing to do with the number of bits per
pixel or precision or anything like that. Even with an infinite number
of bits per pixel and double precision floats throughout the math, that
sphere would STILL exhibit those exact same mach bands.
It's an artifact of your eye/brain and not of the graphics card.
> > If you didn't see this with your old engine, it was either doing something
> > fancier than gouraud - or you simply didn't look at test cases that were
> > identical to this one.
> >
> > ALL Gouraud shaders are doomed to producing mach bands.
>
> Using dithering reduces the problem significantly as does higher color
> resolution (e.g. 24bpp).
That's simply not true. This is a well documented perceptual effect.
The things you describe can also cause visual artifacts like contouring,
but have nothing to do with the mach bands in that sphere image.
Your brain uses shading to determine the shapes of things. When the
rate of change of shading changes, that's something that in the
real world would imply a sudden change in surface geometry. Your
brain needs to be aware of that change - and as a result, it's
'amplified' in your awareness.
Your eyes are NOT video cameras...the more you get into 3D graphics,
the more you come to realise that fact. Even if the display had
infinite precision and infinite resolution, there would still be
mach bands in a Gouraud shaded image.
Check out this interactive toy from the David Anson at Cornell:
http://www.tc.cornell.edu/Visualization/contrib/cs490-96to97/anson/MachBandingApplet/
Steve Baker (817)619-2657 (Vox/Vox-Mail)
Raytheon Systems Inc. (817)619-2466 (Fax)
Work: [EMAIL PROTECTED] http://www.hti.com
Home: [EMAIL PROTECTED] http://web2.airmail.net/sjbaker1
_______________________________________________
Mesa-dev maillist - [EMAIL PROTECTED]
http://lists.mesa3d.org/mailman/listinfo/mesa-dev