[Mesa-dev] [Bug 45913] New: [bisected] piglit vs-clip-vertex-const-reject fails

bugzilla-daemon at freedesktop.org bugzilla-daemon at freedesktop.org
Fri Feb 10 13:57:38 PST 2012


https://bugs.freedesktop.org/show_bug.cgi?id=45913

             Bug #: 45913
           Summary: [bisected] piglit vs-clip-vertex-const-reject fails
    Classification: Unclassified
           Product: Mesa
           Version: git
          Platform: Other
        OS/Version: All
            Status: NEW
          Keywords: regression
          Severity: normal
          Priority: medium
         Component: Mesa core
        AssignedTo: mesa-dev at lists.freedesktop.org
        ReportedBy: pavel.ondracka at email.cz
                CC: stereotype441 at gmail.com


Found while comparing piglit runs on r300g RV530 between 7.11 and 8.0. 
llvmpipe is also affected.

7d68c639ddb0f9df45cf698b8e8227bf1860b5fe is the first bad commit
commit 7d68c639ddb0f9df45cf698b8e8227bf1860b5fe
Author: Paul Berry <stereotype441 at gmail.com>
Date:   Mon Sep 26 13:15:57 2011 -0700

    mesa: Add a gl_vert_result for gl_ClipVertex.

    Before this patch, clip planes didn't work properly in Mesa when using
    vertex shaders, because Mesa assigned both gl_ClipVertex and
    gl_Position to the same gl_vert_result (VERT_RESULT_HPOS).  As a
    result, backends couldn't distinguish between the two variables, so
    any shader that wrote different values to them would fail to work
    properly.

    This patch paves the way for proper support of gl_ClipVertex by
    creating a new enumerated value in gl_vert_result for it
    (VERT_RESULT_CLIP_VERTEX).  After this patch, a back-end may add
    support for gl_ClipVertex using the following algorithm:

    - If using a user-supplied GLSL vertex shader:
      - If the bit corresponding to VERT_RESULT_CLIP_VERTEX is set in
        gl_program::OutputsWritten:
        - Clip using the vertex shader output VERT_RESULT_CLIP_VERTEX and
          the clip planes defined in gl_context::Transform.EyeUserPlane.
      - Else:
        - Clip using the vertex shader output VERT_RESULT_HPOS and the
          clip planes defined in gl_context::Transform.EyeUserPlane.
    - Else (either using fixed function or an ARB vertex program):
      - Clip using the vertex shader output VERT_RESULT_HPOS and the clip
        planes defined in gl_context::Transform._ClipUserPlane (*)

    where (*) represents the normal Mesa behavior before this patch.

    An example of implementing the above algorithm can be found in the
    patch that follows this one, which implements gl_ClipVertex in i965
    Gen6.

    Reviewed-by: Kenneth Graunke <kenneth at whitecape.org>

My system:
GPU: RV530
Mesa: a8cc228edd1dd6328f8b9086d768b52f821c6575
Kernel: 3.2.3
Libdrm 2.4.31

-- 
Configure bugmail: https://bugs.freedesktop.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.


More information about the mesa-dev mailing list