On Jun 17, 2012 6:55 PM, "Bryan Cain" <bryanca...@gmail.com> wrote: > > On 6/16/2012 5:43 PM, Marcin Slusarz wrote: >> >> gl_ClipDistance needs special treatment in form of lowering pass >> which transforms gl_ClipDistance representation from float[] to >> vec4[]. There are 2 implementations - at glsl linker level (enabled >> by LowerClipDistance option) and at glsl_to_tgsi level (enabled >> unconditionally for gallium drivers). Second implementation is >> incomplete - it does not take into account transform feedback (see >> commit 642e5b413e0890b2070ba78fde42db381eaf02e5 "mesa: Fix transform >> feedback of unsubscripted gl_ClipDistance array" for details). >> >> There are 2 possible fixes: >> - adding transform feedback support into glsl_to_tgsi version >> - ripping gl_ClipDistance support from glsl_to_tgsi and enabling >> gl_ClipDistance lowering on glsl linker side >> >> This patch implements 2nd option. All it does is: >> - reverts most of the commit 59be691638200797583bce39a83f641d30d97492 >> "st/mesa: add support for gl_ClipDistance" >> - changes LowerClipDistance to true >> >> Fixes Piglit tests "EXT_transform_feedback/builtin-varyings >> gl_ClipDistance[{2,3,4,5,6,7,8}]-no-subscript" on nv50. >> --- > > > I can't say I know much about how transform feedback works, but is there a reason that the first fix would be difficult? It seems like a waste to not take advantage of hardware support for clip distances because the current implementation isn't complete.
Disregard this. I finally realized what your patch is (and isn't) doing. -Bryan
_______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev