From f06a12170f70fd114ea7265006cd91bc24d03ffa Mon Sep 17 00:00:00 2001 From: PixelyIon Date: Tue, 7 Dec 2021 01:01:13 +0530 Subject: [PATCH] Set Default Color Write Mask to RGBA The default color write mask should mask no channels and write all of them and should be mutated to mask out certain channels as required by the guest. --- .../main/cpp/skyline/gpu/interconnect/graphics_context.h | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/app/src/main/cpp/skyline/gpu/interconnect/graphics_context.h b/app/src/main/cpp/skyline/gpu/interconnect/graphics_context.h index 7cc7b12f..3242ab2b 100644 --- a/app/src/main/cpp/skyline/gpu/interconnect/graphics_context.h +++ b/app/src/main/cpp/skyline/gpu/interconnect/graphics_context.h @@ -63,6 +63,12 @@ namespace skyline::gpu::interconnect { for (auto &vertexAttribute : vertexAttributes) vertexAttribute.description.location = attributeIndex++; + for (auto &rtBlendState : commonRtBlendState) + rtBlendState.colorWriteMask = vk::ColorComponentFlagBits::eR | vk::ColorComponentFlagBits::eG | vk::ColorComponentFlagBits::eB | vk::ColorComponentFlagBits::eA; + + for (auto &rtBlendState : independentRtBlendState) + rtBlendState.colorWriteMask = vk::ColorComponentFlagBits::eR | vk::ColorComponentFlagBits::eG | vk::ColorComponentFlagBits::eB | vk::ColorComponentFlagBits::eA; + if (!gpu.quirks.supportsLastProvokingVertex) rasterizerState.unlink(); }