diff options
author | Keith Whitwell <[email protected]> | 2001-02-16 18:14:41 +0000 |
---|---|---|
committer | Keith Whitwell <[email protected]> | 2001-02-16 18:14:41 +0000 |
commit | 46b0988c673b28e072fd0cbf477632a9ab6f9f18 (patch) | |
tree | 3463116da957c6f13dcb0b415ca8476640503fc7 /src/mesa/drivers/common/t_dd.c | |
parent | 2448fc7deeaa870d879de17158f243f239c05b15 (diff) |
Allow swrast to cope (fairly) cleanly with GL_SEPERATE_SPECULAR when
texturing is not enabled, and without requiring the two colors be
added externally.
As a part of this, collapsed the decomposition of quads into triangles
inside swrast to be hardwired into _swrast_Quad; removed s_quads.[ch].
Removed checks on texture state from t_vb_light.c, which was previously
required by swrast.
Moved the t_dd_ templates to a new directory.
Diffstat (limited to 'src/mesa/drivers/common/t_dd.c')
-rw-r--r-- | src/mesa/drivers/common/t_dd.c | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/src/mesa/drivers/common/t_dd.c b/src/mesa/drivers/common/t_dd.c new file mode 100644 index 00000000000..27db3058755 --- /dev/null +++ b/src/mesa/drivers/common/t_dd.c @@ -0,0 +1,32 @@ + +static void copy_pv_rgba4_spec5( GLcontext *ctx, GLuint edst, GLuint esrc ) +{ + i810ContextPtr imesa = I810_CONTEXT( ctx ); + GLubyte *i810verts = (GLubyte *)imesa->verts; + GLuint shift = imesa->vertex_stride_shift; + i810Vertex *dst = (i810Vertex *)(i810verts + (edst << shift)); + i810Vertex *src = (i810Vertex *)(i810verts + (esrc << shift)); + dst->ui[4] = src->ui[4]; + dst->ui[5] = src->ui[5]; +} + +static void copy_pv_rgba4( GLcontext *ctx, GLuint edst, GLuint esrc ) +{ + i810ContextPtr imesa = I810_CONTEXT( ctx ); + GLubyte *i810verts = (GLubyte *)imesa->verts; + GLuint shift = imesa->vertex_stride_shift; + i810Vertex *dst = (i810Vertex *)(i810verts + (edst << shift)); + i810Vertex *src = (i810Vertex *)(i810verts + (esrc << shift)); + dst->ui[4] = src->ui[4]; +} + +static void copy_pv_rgba3( GLcontext *ctx, GLuint edst, GLuint esrc ) +{ + i810ContextPtr imesa = I810_CONTEXT( ctx ); + GLubyte *i810verts = (GLubyte *)imesa->verts; + GLuint shift = imesa->vertex_stride_shift; + i810Vertex *dst = (i810Vertex *)(i810verts + (edst << shift)); + i810Vertex *src = (i810Vertex *)(i810verts + (esrc << shift)); + dst->ui[3] = src->ui[3]; +} + |