aboutsummaryrefslogtreecommitdiff
path: root/Ryujinx.HLE/Gpu/Engines
diff options
context:
space:
mode:
authorgdkchan <gab.dark.100@gmail.com>2018-07-14 13:08:39 -0300
committerGitHub <noreply@github.com>2018-07-14 13:08:39 -0300
commit2f37583ab3b49aa5064a72c8d3b4e8245ebb6b5b (patch)
tree08797d8b190c33cb942f96fb70fc5b18b995909c /Ryujinx.HLE/Gpu/Engines
parent494f8f0248e7daf3fdfb89a6d90f1598232b6a87 (diff)
Some small shader related fixes (#258)
* Some small shader related fixes * Address PR feedback
Diffstat (limited to 'Ryujinx.HLE/Gpu/Engines')
-rw-r--r--Ryujinx.HLE/Gpu/Engines/NvGpuEngine3d.cs10
1 files changed, 6 insertions, 4 deletions
diff --git a/Ryujinx.HLE/Gpu/Engines/NvGpuEngine3d.cs b/Ryujinx.HLE/Gpu/Engines/NvGpuEngine3d.cs
index 2bacd71b..5c474ab0 100644
--- a/Ryujinx.HLE/Gpu/Engines/NvGpuEngine3d.cs
+++ b/Ryujinx.HLE/Gpu/Engines/NvGpuEngine3d.cs
@@ -172,6 +172,8 @@ namespace Ryujinx.HLE.Gpu.Engines
for (; Index < 6; Index++)
{
+ GalShaderType Type = GetTypeFromProgram(Index);
+
int Control = ReadRegister(NvGpuEngine3dReg.ShaderNControl + Index * 0x10);
int Offset = ReadRegister(NvGpuEngine3dReg.ShaderNOffset + Index * 0x10);
@@ -180,16 +182,16 @@ namespace Ryujinx.HLE.Gpu.Engines
if (!Enable)
{
+ Gpu.Renderer.Shader.Unbind(Type);
+
continue;
}
long Key = BasePosition + (uint)Offset;
- GalShaderType ShaderType = GetTypeFromProgram(Index);
-
- Keys[(int)ShaderType] = Key;
+ Keys[(int)Type] = Key;
- Gpu.Renderer.Shader.Create(Vmm, Key, ShaderType);
+ Gpu.Renderer.Shader.Create(Vmm, Key, Type);
Gpu.Renderer.Shader.Bind(Key);
}