diff options
author | marha <marha@users.sourceforge.net> | 2012-06-15 08:28:24 +0200 |
---|---|---|
committer | marha <marha@users.sourceforge.net> | 2012-06-15 08:28:24 +0200 |
commit | 7a2af605c2c2b0d2e9bbb0b161eba8842acefbcb (patch) | |
tree | 4b28c371be2077a3a6127cbc0694c80a84100699 /mesalib/src/mesa/state_tracker/st_cb_drawpixels.c | |
parent | 925b68a7b26823fdfa1cb25d3edc3545fc2175b1 (diff) | |
download | vcxsrv-7a2af605c2c2b0d2e9bbb0b161eba8842acefbcb.tar.gz vcxsrv-7a2af605c2c2b0d2e9bbb0b161eba8842acefbcb.tar.bz2 vcxsrv-7a2af605c2c2b0d2e9bbb0b161eba8842acefbcb.zip |
fontconfig mesa pixman xserver git update 15 juni 2012
Diffstat (limited to 'mesalib/src/mesa/state_tracker/st_cb_drawpixels.c')
-rw-r--r-- | mesalib/src/mesa/state_tracker/st_cb_drawpixels.c | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/mesalib/src/mesa/state_tracker/st_cb_drawpixels.c b/mesalib/src/mesa/state_tracker/st_cb_drawpixels.c index 9a3f22465..d3f8d1368 100644 --- a/mesalib/src/mesa/state_tracker/st_cb_drawpixels.c +++ b/mesalib/src/mesa/state_tracker/st_cb_drawpixels.c @@ -217,7 +217,7 @@ st_make_drawpix_z_stencil_program(struct st_context *st, if (!p) return NULL; - p->NumInstructions = write_depth ? 2 : 1; + p->NumInstructions = write_depth ? 3 : 1; p->NumInstructions += write_stencil ? 1 : 0; p->Instructions = _mesa_alloc_instructions(p->NumInstructions); @@ -238,6 +238,13 @@ st_make_drawpix_z_stencil_program(struct st_context *st, p->Instructions[ic].TexSrcUnit = 0; p->Instructions[ic].TexSrcTarget = TEXTURE_2D_INDEX; ic++; + /* MOV result.color, fragment.color; */ + p->Instructions[ic].Opcode = OPCODE_MOV; + p->Instructions[ic].DstReg.File = PROGRAM_OUTPUT; + p->Instructions[ic].DstReg.Index = FRAG_RESULT_COLOR; + p->Instructions[ic].SrcReg[0].File = PROGRAM_INPUT; + p->Instructions[ic].SrcReg[0].Index = FRAG_ATTRIB_COL0; + ic++; } if (write_stencil) { @@ -260,8 +267,10 @@ st_make_drawpix_z_stencil_program(struct st_context *st, p->InputsRead = FRAG_BIT_TEX0 | FRAG_BIT_COL0; p->OutputsWritten = 0; - if (write_depth) + if (write_depth) { p->OutputsWritten |= BITFIELD64_BIT(FRAG_RESULT_DEPTH); + p->OutputsWritten |= BITFIELD64_BIT(FRAG_RESULT_COLOR); + } if (write_stencil) p->OutputsWritten |= BITFIELD64_BIT(FRAG_RESULT_STENCIL); |