#endif
}
+static void fxDDRenderPrimitive( GLcontext *ctx, GLenum mode )
+{
+ (void) ctx; (void) mode;
+}
void fxSetupDDPointers(GLcontext *ctx)
ctx->Driver.RenderStart=fxSetupFXUnits;
ctx->Driver.RenderFinish=_swrast_flush;
ctx->Driver.ResetLineStipple=_swrast_ResetLineStipple;
+ ctx->Driver.RenderPrimitive=fxDDRenderPrimitive;
ctx->Driver.TexImage2D = fxDDTexImage2D;
ctx->Driver.TexSubImage2D = fxDDTexSubImage2D;
-#define POINT_FALLBACK (DD_POINT_SMOOTH )
-#define LINE_FALLBACK (DD_LINE_STIPPLE)
-#define TRI_FALLBACK (DD_TRI_SMOOTH | DD_TRI_STIPPLE )
-#define ANY_FALLBACK (POINT_FALLBACK | LINE_FALLBACK | TRI_FALLBACK)
-
-
-#define ANY_RENDER_FLAGS (DD_FLATSHADE | \
- DD_TRI_LIGHT_TWOSIDE | \
- DD_TRI_OFFSET | \
- DD_TRI_UNFILLED)
-
-
-
/**********************************************************************/
/* Render whole begin/end objects */
#include "tnl/t_vb_rendertmp.h"
+/**********************************************************************/
+/* Choose render functions */
+/**********************************************************************/
+
+
+
+
+#define POINT_FALLBACK (DD_POINT_SMOOTH )
+#define LINE_FALLBACK (DD_LINE_STIPPLE)
+#define TRI_FALLBACK (DD_TRI_SMOOTH | DD_TRI_STIPPLE )
+#define ANY_FALLBACK (POINT_FALLBACK | LINE_FALLBACK | TRI_FALLBACK)
+
+
+#define ANY_RENDER_FLAGS (DD_FLATSHADE | \
+ DD_TRI_LIGHT_TWOSIDE | \
+ DD_TRI_OFFSET | \
+ DD_TRI_UNFILLED)
+
/* Setup the Point, Line, Triangle and Quad functions based on the
void fx_validate_BuildProjVerts(GLcontext *ctx, GLuint start, GLuint count,
GLuint newinputs )
{
- GLuint setupindex = SETUP_XYZW;
fxMesaContext fxMesa = (fxMesaContext)ctx->DriverCtx;
if (!fxMesa->is_in_hardware)
- ctx->Driver.BuildProjectedVertices = _swsetup_BuildProjectedVertices;
+ ctx->Driver.BuildProjectedVertices = _swsetup_BuildProjectedVertices;
else {
+ GLuint setupindex = SETUP_XYZW;
+
fxMesa->tmu_source[0] = 0;
fxMesa->tmu_source[1] = 1;
fxMesa->tex_dest[0] = SETUP_TMU0;
ind &= fxMesa->setupindex;
}
- if (0) {
- _tnl_print_vert_flags("newinputs", newinputs);
- fxPrintSetupFlags("setup function", ind);
- }
-
if (ind) {
if (fxMesa->new_state)
- fxSetupFXUnits( ctx );
-
- if (VB->importable_data)
+ fxSetupFXUnits( ctx ); /* why? */
+
+ if (VB->importable_data & newinputs)
VB->import_data( ctx, VB->importable_data & newinputs,
- (VB->ClipOrMask
- ? VEC_NOT_WRITEABLE|VEC_BAD_STRIDE
- : VEC_BAD_STRIDE));
+ VEC_BAD_STRIDE );
setupfuncs[ind]( ctx, start, count );
}