summaryrefslogtreecommitdiff
path: root/Source/Core/VideoCommon/PixelShaderGen.cpp
diff options
context:
space:
mode:
authorJMC47 <JMC4789@gmail.com>2022-06-24 18:40:47 -0400
committerGitHub <noreply@github.com>2022-06-24 18:40:47 -0400
commitffa3bf86fba4b8e678a57f36f902339c4899f094 (patch)
tree7dee9e31bb06b778c5fb47ded8f6f235da5eb910 /Source/Core/VideoCommon/PixelShaderGen.cpp
parent0a2aabe6ec91a5932d3ba6258529af253fec99dd (diff)
parent26529a31ab97f2743fe1a7c52969079d7764bc6d (diff)
Merge pull request #10760 from tellowkrinkle/std430
VideoCommon: Fix SSBO layout and remove associated "bug"
Diffstat (limited to 'Source/Core/VideoCommon/PixelShaderGen.cpp')
-rw-r--r--Source/Core/VideoCommon/PixelShaderGen.cpp19
1 files changed, 3 insertions, 16 deletions
diff --git a/Source/Core/VideoCommon/PixelShaderGen.cpp b/Source/Core/VideoCommon/PixelShaderGen.cpp
index 4a9e9105a8..950763f5d8 100644
--- a/Source/Core/VideoCommon/PixelShaderGen.cpp
+++ b/Source/Core/VideoCommon/PixelShaderGen.cpp
@@ -464,22 +464,9 @@ void WritePixelShaderCommonHeader(ShaderCode& out, APIType api_type,
}
else
{
- out.Write("SSBO_BINDING(0) buffer BBox {{\n");
-
- if (DriverDetails::HasBug(DriverDetails::BUG_BROKEN_SSBO_FIELD_ATOMICS))
- {
- // AMD drivers on Windows seemingly ignore atomic writes to fields or array elements of an
- // SSBO other than the first one, but using an int4 seems to work fine
- out.Write(" int4 bbox_data;\n");
- }
- else
- {
- // The Metal shader compiler fails to compile the atomic instructions when operating on
- // individual components of a vector
- out.Write(" int bbox_data[4];\n");
- }
-
- out.Write("}};");
+ out.Write("SSBO_BINDING(0) buffer BBox {{\n"
+ " int bbox_data[4];\n"
+ "}};");
}
out.Write(R"(