diff options
| author | gdkchan <gab.dark.100@gmail.com> | 2019-12-07 18:31:17 -0300 |
|---|---|---|
| committer | Thog <thog@protonmail.com> | 2020-01-09 02:13:00 +0100 |
| commit | 6b13c5b439a54d0bb0139a2e33a2f76707db5fe7 (patch) | |
| tree | 00ff3f8c7ac2dc7e499a52434fa2f96460387c95 /Ryujinx.Graphics.Shader/Instructions | |
| parent | 7ce5584f9e0d86f17ea4fc781483f60cfa288340 (diff) | |
Support bindless texture gather shader instruction
Diffstat (limited to 'Ryujinx.Graphics.Shader/Instructions')
| -rw-r--r-- | Ryujinx.Graphics.Shader/Instructions/InstEmitTexture.cs | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/Ryujinx.Graphics.Shader/Instructions/InstEmitTexture.cs b/Ryujinx.Graphics.Shader/Instructions/InstEmitTexture.cs index 41ba740e..59096869 100644 --- a/Ryujinx.Graphics.Shader/Instructions/InstEmitTexture.cs +++ b/Ryujinx.Graphics.Shader/Instructions/InstEmitTexture.cs @@ -417,7 +417,7 @@ namespace Ryujinx.Graphics.Shader.Instructions public static void Tld4(EmitterContext context) { - OpCodeTld4 op = (OpCodeTld4)context.CurrOp; + IOpCodeTld4 op = (IOpCodeTld4)context.CurrOp; if (op.Rd.IsRZ) { @@ -455,6 +455,13 @@ namespace Ryujinx.Graphics.Shader.Instructions TextureFlags flags = TextureFlags.Gather; + if (op.Bindless) + { + sourcesList.Add(Rb()); + + flags |= TextureFlags.Bindless; + } + int coordsCount = type.GetDimensions(); for (int index = 0; index < coordsCount; index++) |
