On Thu, Jul 11, 2002 at 06:34:40PM -0400, Leif Delgass wrote:
> On Thu, 11 Jul 2002, Brian Paul wrote:
> 
> > Leif Delgass wrote:
> > > 
> > > I just discovered that the glean failures in blendFunc, logicOp,
> > > orthoPosRandTris, orthoPosRandRects, orthoPosTinyQuads, and polygonOffset
> > > are the result of an off-by-one error in the y screen coordinates.  If I
> > > add one to the Y coordinate in the viewport conversion to screen
> > > coordinates, these tests all pass.  However, it breaks the scissor test
> > > and the orthoPos[H,V]Lines and orthoPosPoints tests still fail (which
> > > could be a result of the implementation of points and lines with
> > > triangles/quads).  It also seems to leave a row of pixels at the top of
> > > the window which isn't drawn on, but is cleared.  The stipple test still
> > > has the same problem because lines still aren't conformant.  I'm still a
> > > little puzzled as to where the off-by-one error actually originates, but
> > > this narrows down the problem a lot.
> > 
> > The Y-coordinate error may be less than one.  Most of the DRI hardware
> > drivers need X/Y coordinates biased by a small amount in order to make
> > hardware rasterization and software rasterization coincide.
> > 
> > So, something like 0.75 or 0.875 might work better.
> 
> Yeah, I just realized that.  I'm playing with X and Y subpixel offsets to
> try and find a combination that fixes the most problems without breaking
> tests that worked. :)
> 

Leif, note that at least with the vertices generated by
mach64_translate_vertex (i.e., converted from the VB into SWVertex during a fallback) 
in the new template they will already be rounded off into the chip precision, so that 
can make a difference already. You'll perhaps want look into that as well.

Note also that the native vertex format stuff is finished, and is now
enabled by default in the CVS. The old behavior is still there and one
can change the MACH64_NATIVE_VTXMFT macro in mach64_context.h to enable
it but that code won't stay much longer - because the new code is much
more optimized and has some fixes which I didn't bother to propagate to
the old code, and also to make place for new optimizations (such as
primitive strips and so on).


-------------------------------------------------------
This sf.net email is sponsored by:ThinkGeek
PC Mods, Computing goodies, cases & more
http://thinkgeek.com/sf
_______________________________________________
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel

Reply via email to