https://bugs.freedesktop.org/show_bug.cgi?id=41787
--- Comment #16 from José Fonseca <jfons...@vmware.com> --- I spent sometime today looking at this. I modified glretrace to dump the stencil buffer instead of color buffer: $ git diff diff --git a/retrace/glstate_images.cpp b/retrace/glstate_images.cpp index e534a65..75664e6 100644 --- a/retrace/glstate_images.cpp +++ b/retrace/glstate_images.cpp @@ -739,6 +739,7 @@ getFramebufferAttachmentDesc(Context &context, GLenum target, GLenum attachment, image::Image * getDrawBufferImage() { GLenum format = GL_RGB; + format = GL_STENCIL_INDEX; GLint channels = _gl_format_channels(format); if (channels > 4) { return NULL; And ran retracediff.py script to compare the stencil buffer contents, on every draw call, between llvmpipe and Intel: $ ./scripts/retracediff.py -r ./glretrace --src-env LD_LIBRARY_PATH=/home/jfonseca/projects/opengl/mesa/build/linux-x86_64-debug/gallium/targets/graw-xlib:/home/jfonseca/projects/opengl/mesa/build/linux-x86_64-debug/gallium/targets/libgl-xlib /home/jfonseca/projects/opengl/traces/stencil.trace call precision 387 36.802488 531 36.802488 622 36.802488 708 36.802488 776 36.802488 802 7.947939 { GL_ATTRIB_STACK_DEPTH: 0 -> 1, GL_COLOR_ARRAY: "GL_TRUE" -> "GL_FALSE", GL_COLOR_ARRAY_POINTER: 59042800 -> 62751856, GL_COLOR_WRITEMASK: [ "GL_TRUE" -> "GL_FALSE", "GL_TRUE" -> "GL_FALSE", "GL_TRUE" -> "GL_FALSE", "GL_TRUE" -> "GL_FALSE" ], GL_CULL_FACE_MODE: "GL_BACK" -> "GL_FRONT", GL_CURRENT_MATRIX_ARB: [ 1 -> 1.961161, 0 -> 0.07548513, 0 -> 0.3849002, 0, 0, 1 -> 1.962614, 0 -> -0.3849002, 0, 0 -> -0.3922323, 0 -> 0.3774257, 1 -> 1.924501, 0, 0 -> -17.65045, 0 -> -12.45505, 0 -> 92.37605, 1 ], GL_DEBUG_CALLBACK_USER_PARAM: 36090016 -> 39956640, GL_DEPTH_WRITEMASK: "GL_TRUE" -> "GL_FALSE", GL_LIGHTING: "GL_TRUE" -> "GL_FALSE", GL_MATRIX_MODE: "GL_TEXTURE" -> "GL_MODELVIEW", GL_NORMAL_ARRAY: "GL_TRUE" -> "GL_FALSE", GL_NORMAL_ARRAY_POINTER: 61292368 -> 65157424, GL_POLYGON_OFFSET_BIAS_EXT: 0 -> 1, GL_POLYGON_OFFSET_FILL: "GL_FALSE" -> "GL_TRUE", GL_POLYGON_OFFSET_UNITS: 0 -> 1, GL_STENCIL_BACK_PASS_DEPTH_FAIL: "GL_KEEP" -> "GL_INCR_WRAP", GL_STENCIL_PASS_DEPTH_FAIL: "GL_KEEP" -> "GL_INCR_WRAP", GL_STENCIL_TEST: "GL_FALSE" -> "GL_TRUE", GL_TEXTURE_COORD_ARRAY: "GL_TRUE" -> "GL_FALSE", GL_TEXTURE_COORD_ARRAY_POINTER: 61081232 -> 64931200, GL_TRANSPOSE_CURRENT_MATRIX_ARB: [ 1 -> 1.961161, 0 -> 0.07548513, 0 -> 0.3849002, 0, 0, 1 -> 1.962614, 0 -> -0.3849002, 0, 0 -> -0.3922323, 0 -> 0.3774257, 1 -> 1.924501, 0, 0 -> -17.65045, 0 -> -12.45505, 0 -> 92.37605, 1 ], GL_VERTEX_ARRAY_POINTER: 61337392 -> 65378608, GL_VERTEX_ARRAY_STRIDE: 36 -> 12, } 806 5.831233 837 5.831233 So the differences start on call 802. The attached stencil-802-intel.png stencil-802-llvmpipe.png show the stencil contents on that call. It's still not clear whether this is a truly a depth stencil issue, or simply a depth test (polygon offset) problem. -- You are receiving this mail because: You are the assignee for the bug.
_______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev