summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBrian Paul <brianp@vmware.com>2010-02-05 12:57:11 -0700
committerBrian Paul <brianp@vmware.com>2010-02-05 12:57:11 -0700
commita846fc67935dfa46c8170aa8a31486c8ce4e2e52 (patch)
tree459ef82344f9a26881402786aec84292dc320e95
parent3ec81e171572895798ab48355f08bf3387fb9547 (diff)
downloadmesa-gallium-cylindrical-wrap.tar.gz
fix bug in perspective corrected interpolants for linesgallium-cylindrical-wrap
-rw-r--r--src/gallium/drivers/softpipe/sp_setup.c3
1 files changed, 1 insertions, 2 deletions
diff --git a/src/gallium/drivers/softpipe/sp_setup.c b/src/gallium/drivers/softpipe/sp_setup.c
index 9036f32c090..b8590a8cc2c 100644
--- a/src/gallium/drivers/softpipe/sp_setup.c
+++ b/src/gallium/drivers/softpipe/sp_setup.c
@@ -908,7 +908,6 @@ line_persp_coeff(const struct setup_context *setup,
uint i,
const float v[2])
{
- /* XXX double-check/verify this arithmetic */
const float a0 = v[0] * setup->vmin[0][3];
const float a1 = v[1] * setup->vmax[0][3];
const float da = a1 - a0;
@@ -916,7 +915,7 @@ line_persp_coeff(const struct setup_context *setup,
const float dady = da * setup->emaj.dy * setup->oneoverarea;
coef->dadx[i] = dadx;
coef->dady[i] = dady;
- coef->a0[i] = (v[0] - /* XXX: <-- shouldn't that be a0? */
+ coef->a0[i] = (a0 -
(dadx * (setup->vmin[0][0] - setup->pixel_offset) +
dady * (setup->vmin[0][1] - setup->pixel_offset)));
}