From 9572425912c2ee07ee112d8fe75a817c0f82b85c Mon Sep 17 00:00:00 2001 From: Philip Rebohle Date: Fri, 7 Dec 2018 13:43:27 +0100 Subject: [PATCH] [dxvk] Clear color write mask if fragment shader output is undefined Fallout 76 writes undefined data to one specific render target otherwise. Refs #779. --- src/dxvk/dxvk_graphics.cpp | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/dxvk/dxvk_graphics.cpp b/src/dxvk/dxvk_graphics.cpp index f8f4af83..dae1a9b3 100644 --- a/src/dxvk/dxvk_graphics.cpp +++ b/src/dxvk/dxvk_graphics.cpp @@ -231,6 +231,9 @@ namespace dxvk { state.omBlendAttachments[i].colorWriteMask, state.omComponentMapping[i]); + if ((m_fsOut & (1 << i)) == 0) + omBlendAttachments[i].colorWriteMask = 0; + specData.outputMappings[4 * i + 0] = util::getComponentIndex(state.omComponentMapping[i].r, 0); specData.outputMappings[4 * i + 1] = util::getComponentIndex(state.omComponentMapping[i].g, 1); specData.outputMappings[4 * i + 2] = util::getComponentIndex(state.omComponentMapping[i].b, 2);