On Tue, 15 Feb 2005 21:02:13 -0500, Daniel Phillips <[EMAIL PROTECTED]> wrote:
> On Tuesday 15 February 2005 18:44, Lourens Veen wrote:
> > On Tuesday 15 February 2005 23:47, I wrote:
> > > At this point I'm fretting more about DDA precision than the
> > > perspective divide.  I seriously doubt we'll get stable results
> > > stepping across the whole screen with 16 bit precision.  I'm
> > > mulling over a couple of suggestions, short of adding more bits.
> >
> > ...At any rate, could we assume a maximum of 2048x1536 for the
> > resolution? That means 11 bits for integer screen coordinates, so
> > we'd have an 11.5 split if we did fixed point (and floating point
> > just doesn't make sense to me here really, comments?).
> 
> Floating point makes a whole lot of sense here because we don't have
> much control over the input parameters, which can vary over wide
> ranges.  The W divide introduces a further, large degree of variation
> for new and far objects.  A typical nasty case is a viewpoint near a
> huge vertical plane running far into the distance, i.e., looking along
> the side of a building.

Without anisotropic filtering, you're never going to get good results
out of this anyhow.

> 
> > That means
> > that if the span is larger than 32 pixels, we get in trouble. In
> > fact, we'd need 11.11 probably to get it perfectly right. Which means
> > 22 bits adders :-(.
> 
> You can get in trouble way before hitting a full pixel error in the
> geometry.  For example, the jaggies may start doing wild things in
> animation instead of crawling along the edges nicely like they are
> supposed to.
> 

An 11.11 adder isn't as bad as an 18-bit float adder.  Not even close.  :)

> 
> > Just some thoughts.
> 
> Three options that seem viable to me are:
> 
>   1) Correct each interpolant on the fly using a single multiplier in a
>      round robin.
> 
>   2) Chop up big geometry in the driver vertically and horizontally into
>      bite size chunks.
> 
>   3) More bits, just for the interpolants.
> 
> The second of these seems the most pragmatic since it can be offloaded
> to the host, saving gates and Timothy cycles.  The extra work would
> level out nicely because larger triangles incur most of the penalty,
> and there should be fewer of them.  For best visual stability, the
> clipping planes would form a rectangular mesh in screen space.  Note
> that this means small triangles do not necessarily escape intact,
> however they are more likely to.

I like this option too.  :)
_______________________________________________
Open-graphics mailing list
[email protected]
http://lists.duskglow.com/mailman/listinfo/open-graphics
List service provided by Duskglow Consulting, LLC (www.duskglow.com)

Reply via email to