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@lists.freedesktop.org
Reporter: mais...@archlinux.us
QA Contact: mesa-dev@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.
_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev