diff options
author | Billy Laws <blaws05@gmail.com> | 2022-06-02 23:51:36 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-06-02 19:51:36 -0300 |
commit | d03124a9921f2dd9f3d52c8aa7c7b6dc5d4f7aef (patch) | |
tree | e4305ec9043121f91a8b03b4b6ff519a5b975231 | |
parent | 59490d54b5e6b85df27ac6f6c08d0925be899360 (diff) |
Fix 3D semaphore counter type 0 handling (#3380)1.1.137
Counter type 0 actually releases the semaphore payload rather than a constant zero as was previously thought. This is required by Skyrim.
-rw-r--r-- | Ryujinx.Graphics.Gpu/Engine/Threed/SemaphoreUpdater.cs | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/Ryujinx.Graphics.Gpu/Engine/Threed/SemaphoreUpdater.cs b/Ryujinx.Graphics.Gpu/Engine/Threed/SemaphoreUpdater.cs index 986c02ab..6fc931f7 100644 --- a/Ryujinx.Graphics.Gpu/Engine/Threed/SemaphoreUpdater.cs +++ b/Ryujinx.Graphics.Gpu/Engine/Threed/SemaphoreUpdater.cs @@ -44,7 +44,7 @@ namespace Ryujinx.Graphics.Gpu.Engine.Threed /// </summary> private enum ReportCounterType { - Zero = 0, + Payload = 0, InputVertices = 1, InputPrimitives = 3, VertexShaderInvocations = 5, @@ -169,8 +169,8 @@ namespace Ryujinx.Graphics.Gpu.Engine.Threed switch (type) { - case ReportCounterType.Zero: - resultHandler(null, 0); + case ReportCounterType.Payload: + resultHandler(null, (ulong)_state.State.SemaphorePayload); break; case ReportCounterType.SamplesPassed: counter = _context.Renderer.ReportCounter(CounterType.SamplesPassed, resultHandler, false); |