mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2025-07-28 11:49:06 +00:00
VideoCommon: Fix SSBO layout and remove associated "bug"
This commit is contained in:
parent
431d757151
commit
26529a31ab
5 changed files with 6 additions and 29 deletions
|
@ -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"(
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue