michal wrote: > Brian Paul wrote on 2010-02-05 18:56: >> michal wrote: >> >>> Micha?? Kr??l wrote on 2010-02-05 17:34: >>> >>>> Module: Mesa >>>> Branch: gallium-cylindrical-wrap >>>> Commit: f90399107eb9b54ea2c76f973ab487c38e61a5f0 >>>> URL: >>>> http://cgit.freedesktop.org/mesa/mesa/commit/?id=f90399107eb9b54ea2c76f973ab487c38e61a5f0 >>>> >>>> Author: Michal Krol <mic...@vmware.com> >>>> Date: Fri Feb 5 17:12:48 2010 +0100 >>>> >>>> softpipe: Properly implement cylindrical wrapping. >>>> >>>> @@ -801,21 +900,23 @@ line_linear_coeff(const struct setup_context *setup, >>>> /** >>>> * Compute a0, dadx and dady for a perspective-corrected interpolant, >>>> * for a line. >>>> + * v[0] and v[1] are vmin and vmax, respectively. >>>> */ >>>> static void >>>> line_persp_coeff(const struct setup_context *setup, >>>> struct tgsi_interp_coef *coef, >>>> - uint vertSlot, uint i) >>>> + uint i, >>>> + const float v[2]) >>>> { >>>> /* XXX double-check/verify this arithmetic */ >>>> - const float a0 = setup->vmin[vertSlot][i] * setup->vmin[0][3]; >>>> - const float a1 = setup->vmax[vertSlot][i] * setup->vmax[0][3]; >>>> + const float a0 = v[0] * setup->vmin[0][3]; >>>> + const float a1 = v[1] * setup->vmax[0][3]; >>>> const float da = a1 - a0; >>>> const float dadx = da * setup->emaj.dx * setup->oneoverarea; >>>> const float dady = da * setup->emaj.dy * setup->oneoverarea; >>>> coef->dadx[i] = dadx; >>>> coef->dady[i] = dady; >>>> - coef->a0[i] = (setup->vmin[vertSlot][i] - >>>> + coef->a0[i] = (v[0] - /* XXX: <-- shouldn't that be a0? */ >>>> >>>> >>> I have put this XXX comment, because the code in line_persp_coeff() is >>> not consistent wih tri_persp_coeff(). Can someone double check this? >>> >> It works. I added a line drawing mode to cylwrap.c to test. >> >> > Just noticed there are two XXX comments in the snippet. Are we talking > about the new one in the last line of the cited code? > > /* XXX: <-- shouldn't that be a0? */
Yes, it looks like the code is wrong there. I'll do some additional testing. This is probably wrong in 7.7 too. -Brian _______________________________________________ mesa-commit mailing list mesa-commit@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-commit