This series contains several small fixups to the MSAA code for Intel chipsets, and to the blorp engine (which handles both MSAA resolves and general blits).
Patches 1-2 fix a bug that prevented MSAA from working at all if the framebuffer lacked a color buffer: we were erroneously basing the decision of whether to set up the 3D pipeline for multisampling based on the sample count of the first color buffer. As a result, if there was no color buffer, multisampling did not occur. Patches 3-4 fix a GPU hang on Gen6 that would sometimes happen if the framebuffer lacked a color buffer: null render targets (which are used in place of the color buffer if none is present) don't appear to work with multisampling on Gen6. To work around the problem, we create a small dummy buffer to render into. Patches 5-6 fix a problem with scissoring of blits to window system framebuffers, having to do with the flipped Y axis in window system framebuffers: we were doing the scissoring and the Y axis flipping in the wrong order. Patches 7-9 modify the blorp engine to respect the DrawBuffers setting when doing blits. Previously we would just blit to the first enabled draw buffer. Finally, patch 10 removes a comment that was explaining why we had previously claimed to support MSAA even though we didn't. Now that we do support MSAA, the comment is irrelevant. This patch series depends on a previous patch series that is still being reviewed ([PATCH 0/7] i965/blorp: Improvements to the blorp engine for Gen7), so it probably won't apply cleanly to master. To see the patch series in the proper context, please fetch from branch "msaa-fixups" on git://github.com/stereotype441/mesa.git. [PATCH 01/10] msaa: Compute visual samples/sampleBuffers from all buffers. [PATCH 02/10] i965/msaa: Control multisampling behaviour via the visual. [PATCH 03/10] i965: Set width, height, and tiling properly for null render targets. [PATCH 04/10] i965/msaa: Work around problems with null render targets on Gen6. [PATCH 05/10] i965/blorp: Simplify check that src/dst width/height match. [PATCH 06/10] i965/blorp: Fixup scissoring of blits to window system buffers. [PATCH 07/10] i965/blorp: Don't fall back to swrast when miptrees absent. [PATCH 08/10] i965/blorp: Rearrange order of blit validation and preparation steps. [PATCH 09/10] i965/blorp: Handle DrawBuffers properly. [PATCH 10/10] i965/msaa: Remove comment about falsely claiming to support MSAA. _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev