From: Brian P. <br...@va...> - 2000-11-05 20:31:24
|
Keith Whitwell wrote: > > I'll post a more detailed summary later, but I've committed changes with > fairly sweeping scope. Fundamentally, core mesa is out of the fallback > business, this is now the job of the drivers and two helper modules 'swrast' > and 'swrast_setup'. > > Swrast is the old software rasterizer wrapped up behind an interface which > removes the need for the driver to care about which statechanges might affect > the rasterizer itself. > > Swrast_setup is a layer above the software rasterizer which takes care of > unfilled, offset, two-side lit and flatshaded primitives. It also provides a > RasterSetup phase for building SWvertices efficiently. > > I've modified the FX, X11 and OSmesa drivers to this new regime, though at > this point I've done nothing to ensure performance has been maintained. > > In the case of the FX driver, I've taken steps to simplify the codebase in > reflection of it's basically obsolete status. To this end I've removed lots > of marginal or experimental code, and backported some of the appropriate bits > of a DRI style driver. I propose that the focus of this driver be providing a > solid Glide2 driver, and that if anyone wants to focus on performance and/or > Glide3, they should backport the new tdfx-3-0-0-branch DRI driver, which > offers very good performance gains on the Glide2 codebase. Good work, Keith. This is looking really good. After compiling and taking a quick look over the code I just have a couple comments: 1. _swsetup_RegisterVB() returns a boolean, but in dd.h, the RegisterVB function pointer returns void. Which should it be? 2. I think the SWvertex pointers passed to the point, line and triangle functions could/should be const-qualified. Right? -Brian |