|
From: Ethan M. <merritt@u.washington.edu> - 2007-02-07 20:01:43
|
On Wednesday 07 February 2007 11:44, Hans-Bernhard Br=F6ker wrote: > Pierre wrote: >=20 > > I'm not sure to understand why it is biased. Each vertex color is > > known. The first vertex is the top left one, after they have been > > sorted. >=20 > The bias lies in picking the top left vertex as "the first".=20 > This can cause nasty effects like: the same triangle comes out subtly=20 > different if the scene is rendered upside down or rotated by 90 degress,= =20 > even though the result should be exactly the same. =20 That is true, but the failure mode is usually harmless. If you rotate the triangle in 3D its coloring may change very slightly, but if it is a single facet of a larger surface this will probably not be noticed since the adjacent triangles are similarly affected. > the same issue can cause edges to be drawn differently if you switch the= =20 > order of their vertices in the drawline() function call. This is the more important issue, as I tried to point out before. In rendering a tesselated surface, it is common that the same edge will be traversed in different directions in the course of rendering the two facets that it separates. In order to assure smooth coloring across the break, it is crucial that the direction of traversal not affect the color assignment. =2D-=20 Ethan A Merritt |