summaryrefslogtreecommitdiffstats
path: root/src/mesa/tnl
diff options
context:
space:
mode:
authorBrian Paul <[email protected]>2010-01-08 08:21:12 -0700
committerBrian Paul <[email protected]>2010-01-08 08:21:12 -0700
commitfd70841121475d7aad98812d6bf9c9c67567b89a (patch)
tree13f7eef837abc0151dc663a2b6fed04d7f2cc578 /src/mesa/tnl
parenta1de400e8de06a80ab140bb0fa950e990607572d (diff)
parent674c76310fe93dd3d7a15af0f72bb9f04351d09f (diff)
Merge branch 'mesa_7_7_branch'
Conflicts: src/mesa/drivers/dri/i965/brw_wm_emit.c
Diffstat (limited to 'src/mesa/tnl')
-rw-r--r--src/mesa/tnl/t_vb_program.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/mesa/tnl/t_vb_program.c b/src/mesa/tnl/t_vb_program.c
index c289cdfbaac..15a8a67b91c 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