From: Brian Paul Date: Thu, 7 Jan 2010 00:42:53 +0000 (-0700) Subject: tnl: set FOGC result to (f,0,0,1) X-Git-Tag: mesa-7.8~1360^2~242 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=8485811f10142f54756d876ebe91193bfc8f8a0e;p=platform%2Fupstream%2Fmesa.git tnl: set FOGC result to (f,0,0,1) Fixed FDO bug 23397. --- diff --git a/src/mesa/tnl/t_vb_program.c b/src/mesa/tnl/t_vb_program.c index e69f7d5..a9dae7d 100644 --- a/src/mesa/tnl/t_vb_program.c +++ b/src/mesa/tnl/t_vb_program.c @@ -390,6 +390,13 @@ run_vp( GLcontext *ctx, struct tnl_pipeline_stage *stage ) #endif COPY_4V(store->results[attr].data[i], machine.Outputs[attr]); } + + /* FOGC is a special case. Fragment shader expects (f,0,0,1) */ + if (program->Base.OutputsWritten & BITFIELD64_BIT(VERT_RESULT_FOGC)) { + store->results[VERT_RESULT_FOGC].data[i][1] = 0.0; + store->results[VERT_RESULT_FOGC].data[i][2] = 0.0; + store->results[VERT_RESULT_FOGC].data[i][3] = 1.0; + } #ifdef NAN_CHECK ASSERT(machine.Outputs[0][3] != 0.0F); #endif