On Mon, 2012-07-02 at 10:08 -0700, Paul Berry wrote: > On 2 July 2012 08:04, Vadim Girlin <vadimgir...@gmail.com> wrote: > On Sun, 2012-06-24 at 11:18 +0200, Olivier Galibert wrote: > > That old bug was hidden but the clipper always interpolating > in 3d > > space no matter what it should have been doing. Now that > the > > interpolation has been fixed, the bug shows up. > > > > Fixes bugzilla 51364. > > > > Signed-off-by: Olivier Galibert <galib...@pobox.com> > > > > diff --git a/src/mesa/state_tracker/st_program.c > b/src/mesa/state_tracker/st_program.c > > index e6664fb..9f98298 100644 > > --- a/src/mesa/state_tracker/st_program.c > > +++ b/src/mesa/state_tracker/st_program.c > > @@ -569,12 +569,12 @@ st_translate_fragment_program(struct > st_context *st, > > case FRAG_ATTRIB_CLIP_DIST0: > > input_semantic_name[slot] = > TGSI_SEMANTIC_CLIPDIST; > > input_semantic_index[slot] = 0; > > - interpMode[slot] = TGSI_INTERPOLATE_LINEAR; > > + interpMode[slot] = > TGSI_INTERPOLATE_PERSPECTIVE; > > break; > > case FRAG_ATTRIB_CLIP_DIST1: > > input_semantic_name[slot] = > TGSI_SEMANTIC_CLIPDIST; > > input_semantic_index[slot] = 1; > > - interpMode[slot] = TGSI_INTERPOLATE_LINEAR; > > + interpMode[slot] = > TGSI_INTERPOLATE_PERSPECTIVE; > > > At first glance this change doesn't seem correct, GLSL 1.30 > spec says > that clip distances are interpolated linearly. Am I missing > something? > > I think when the spec says "The clip distances will be linearly > interpolated across the primitive...", they mean "linear in 3D space". > Interpolating clip distances in screen space would produce really bad > artifacts, IMHO.
Looking into it, I think you are right, sorry for the noise. Though then I have some doubts about the "fs-clip-distance-interpolated" test. AFAICS r600g in fact uses different interpolation for ClipDistance inputs with and without the patch, but the test does pass in both cases. Vadim > > > Vadim > > > break; > > /* In most cases, there is nothing special > about these > > * inputs, so adopt a convention to use the > generic > > _______________________________________________ > > mesa-dev mailing list > > mesa-dev@lists.freedesktop.org > > http://lists.freedesktop.org/mailman/listinfo/mesa-dev > > > > _______________________________________________ > mesa-dev mailing list > mesa-dev@lists.freedesktop.org > http://lists.freedesktop.org/mailman/listinfo/mesa-dev > > _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev