[Mesa-dev] [Bug 102634] 0 Color write masks with multiple render targets redirects color outputs to wrong attachment

bugzilla-daemon at freedesktop.org bugzilla-daemon at freedesktop.org
Sat Sep 9 10:19:17 UTC 2017


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

            Bug ID: 102634
           Summary: 0 Color write masks with multiple render targets
                    redirects color outputs to wrong attachment
           Product: Mesa
           Version: 17.1
          Hardware: Other
                OS: All
            Status: NEW
          Severity: normal
          Priority: medium
         Component: Drivers/Vulkan/radeon
          Assignee: mesa-dev at lists.freedesktop.org
          Reporter: maister at archlinux.us
        QA Contact: mesa-dev at lists.freedesktop.org

Created attachment 134107
  --> https://bugs.freedesktop.org/attachment.cgi?id=134107&action=edit
Expected output

Hardware: RX 470
Mesa: 17.1.8
OS: Arch Linux

I have a deferred shader which emits color data to 4 attachments. When
colorWriteMask of all attachments are 0xf, this works as expected, but when I
try to mask out writes to layout(location = 0), it is almost as if all the
attachments are reshuffled so that location = 1 writes to attachment 0,
location = 2 writes to attachment = 1 ... and so on.

Here is the current workaround I must apply:
https://github.com/Themaister/Granite/blob/master/assets/shaders/inc/render_target.h#L8

The scenario which fails:
- 4 color attachments in a subpass
- Color masks are {0, 0xf, 0xf, 0xf}
- The shader does not declare layout(location = 0) output

To reproduce:
Build Granite: https://github.com/Themaister/Granite
Run Suzanne model: ./granite/tests/gltf-viewer
~/git/glTF-Sample-Models/2.0/Suzanne/glTF/Suzanne.gltf

Fiddle with WORKAROUND_RADV define mentioned above:

-- 
You are receiving this mail because:
You are the QA Contact for the bug.
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/mesa-dev/attachments/20170909/744d9407/attachment-0001.html>


More information about the mesa-dev mailing list