diff options
author | gdkchan <gab.dark.100@gmail.com> | 2019-12-07 01:54:28 -0300 |
---|---|---|
committer | Thog <thog@protonmail.com> | 2020-01-09 02:13:00 +0100 |
commit | 7ce5584f9e0d86f17ea4fc781483f60cfa288340 (patch) | |
tree | 1fe59d43bbd7a84687f6ad65156704718eeb852c /Ryujinx.Graphics.Gpu/Engine/Methods.cs | |
parent | 17fb11ddb98e94aaf494eaf6002ab149c5d54000 (diff) |
Support depth clip mode and disable shader fast math optimization on NVIDIA as a workaround for compiler bugs (?)
Diffstat (limited to 'Ryujinx.Graphics.Gpu/Engine/Methods.cs')
-rw-r--r-- | Ryujinx.Graphics.Gpu/Engine/Methods.cs | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/Ryujinx.Graphics.Gpu/Engine/Methods.cs b/Ryujinx.Graphics.Gpu/Engine/Methods.cs index 29360cf9..0fa3514f 100644 --- a/Ryujinx.Graphics.Gpu/Engine/Methods.cs +++ b/Ryujinx.Graphics.Gpu/Engine/Methods.cs @@ -102,7 +102,7 @@ namespace Ryujinx.Graphics.Gpu.Engine UpdateDepthTestState(state); } - if (state.QueryModified(MethodOffset.ViewportTransform, MethodOffset.ViewportExtents)) + if (state.QueryModified(MethodOffset.DepthMode, MethodOffset.ViewportTransform, MethodOffset.ViewportExtents)) { UpdateViewportTransform(state); } @@ -294,6 +294,10 @@ namespace Ryujinx.Graphics.Gpu.Engine private void UpdateViewportTransform(GpuState state) { + DepthMode depthMode = state.Get<DepthMode>(MethodOffset.DepthMode); + + _context.Renderer.Pipeline.SetDepthMode(depthMode); + bool transformEnable = GetViewportTransformEnable(state); bool flipY = (state.Get<int>(MethodOffset.YControl) & 1) != 0; |