[Vulkan] Remove UB-based independent blend logic

On Vulkan, unlike Direct3D, not writing to a color target in the fragment shader produces an undefined result.
This commit is contained in:
Triang3l
2022-06-25 20:57:44 +03:00
parent d8b2944caa
commit a5c8df7a37
3 changed files with 9 additions and 44 deletions

View File

@@ -46,11 +46,6 @@ class SpirvShaderTranslator : public ShaderTranslator {
struct PixelShaderModification {
// Dynamically indexable register count from SQ_PROGRAM_CNTL.
uint32_t dynamic_addressable_register_count : 8;
// Color outputs removed from the shader to implement a zero color write
// mask when independent blending (and thus independent write masks) is
// not supported without switching to a render pass with some attachments
// actually excluded.
uint32_t color_outputs_disabled : 4;
} pixel;
uint64_t value = 0;