- Remove support for choosing software fallbacks from core code
- Remove partial fallback code from vbrender.c -- drivers are now
expected to be able to find a triangle/quad function for every state,
even if they have to use _swsetup_Triangle or _swsetup_Quad.
- Marked derived variables in the GLcontext struct with a leading
underscore '_'.
A new module to provide RasterSetup and advanced triangle/line/point
functionality layered on top of the software rasterizer.
An example entrypoint:
void _swsetup_Triangle( GLcontext, GLuint, GLuint, GLuint, GLuint )
will coerce the software rasterizer to draw flat, twoside-lit,
unfilled and offset triangles (including decomposition to points or lines).
- use the new interface to the software rasterizer.
- manage all fallbacks internally, hooking in swrast or
swrast_setup if necessary.
- removed lots of marginal code no longer appropriate in a
maturing driver.
- reworked the vertex-setup and triangle routines, including
drawing unfilled triangles from within the driver.
Replace the flags Mesa was using for ctx->NewState with a new set
based on the GL attribute groups.
Introduced constants describing the circumstances under which some
key derived values can change:
_SWRAST_NEW_RASTERMASK -- ctx->RasterMask
_SWRAST_NEW_TRIANGLE -- The software rasterizer's triangle
function
_DD_NEW_FEEDBACK -- the 'DD_FEEDBACK' bit in ctx->TriangleCaps
These are helpful in deciding whether you need to recalculate state if your
recalculation involves reference to a derived value.
Enabled GL_EXT_secondary_color. Fixed a bunch of typos in the dlist.c
and state.c file for plugging those functions into the dispatch table.
Don't use Mesa 3.5 for DRI until SGI approves the new dispatch offsets.
Commented-out references to ctx->FogMode and VB->Specular in FX driver.
Minor clean-up in extensions.c
Removed unused prototype in fog.h