summaryrefslogtreecommitdiff
path: root/src/mesa/swrast/s_span.c
diff options
context:
space:
mode:
authorBrian <brian.paul@tungstengraphics.com>2007-06-20 11:01:09 -0600
committerBrian <brian.paul@tungstengraphics.com>2007-06-20 11:01:09 -0600
commitf9c17ec58a492a7657ea120fa394056a680b9ec5 (patch)
tree69d9bb83477d3bd3e939611564c87c2439e46598 /src/mesa/swrast/s_span.c
parentbd8eeb7ed09be698896d26c75aa60659efaa25a6 (diff)
parenta4af3e5ab3fa0f45c25673c93d802cdff087145c (diff)
Merge branch 'master' of git+ssh://brianp@git.freedesktop.org/git/mesa/mesa
Diffstat (limited to 'src/mesa/swrast/s_span.c')
-rw-r--r--src/mesa/swrast/s_span.c11
1 files changed, 9 insertions, 2 deletions
diff --git a/src/mesa/swrast/s_span.c b/src/mesa/swrast/s_span.c
index 90a3d5545f..3aaa3395e4 100644
--- a/src/mesa/swrast/s_span.c
+++ b/src/mesa/swrast/s_span.c
@@ -1169,10 +1169,17 @@ shade_texture_span(GLcontext *ctx, SWspan *span)
if (ctx->FragmentProgram._Current ||
ctx->ATIFragmentShader._Enabled) {
/* programmable shading */
+ if (span->primitive == GL_BITMAP) {
+ if (span->array->ChanType != GL_FLOAT)
+ convert_color_type(span, GL_FLOAT, 0);
+ interpolate_active_attribs(ctx, span, ~FRAG_ATTRIB_COL0);
+ }
+ else {
+ /* point, line, triangle */
+ interpolate_active_attribs(ctx, span, ~0);
+ }
span->array->ChanType = GL_FLOAT;
- interpolate_active_attribs(ctx, span, ~0);
-
if (!(span->arrayMask & SPAN_Z))
_swrast_span_interpolate_z (ctx, span);