diff options
Diffstat (limited to 'src/video_core')
| -rw-r--r-- | src/video_core/renderer_opengl/gl_shader_decompiler.cpp | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/video_core/renderer_opengl/gl_shader_decompiler.cpp b/src/video_core/renderer_opengl/gl_shader_decompiler.cpp index 9e0813a72..34db38787 100644 --- a/src/video_core/renderer_opengl/gl_shader_decompiler.cpp +++ b/src/video_core/renderer_opengl/gl_shader_decompiler.cpp | |||
| @@ -1578,6 +1578,13 @@ private: | |||
| 1578 | } | 1578 | } |
| 1579 | break; | 1579 | break; |
| 1580 | } | 1580 | } |
| 1581 | case Tegra::Shader::TextureType::Texture3D: { | ||
| 1582 | std::string x = regs.GetRegisterAsFloat(instr.gpr8); | ||
| 1583 | std::string y = regs.GetRegisterAsFloat(instr.gpr20); | ||
| 1584 | std::string z = regs.GetRegisterAsFloat(instr.gpr20.Value() + 1); | ||
| 1585 | coord = "vec3 coords = vec3(" + x + ", " + y + ", " + z + ");"; | ||
| 1586 | break; | ||
| 1587 | } | ||
| 1581 | case Tegra::Shader::TextureType::TextureCube: { | 1588 | case Tegra::Shader::TextureType::TextureCube: { |
| 1582 | std::string x = regs.GetRegisterAsFloat(instr.gpr8); | 1589 | std::string x = regs.GetRegisterAsFloat(instr.gpr8); |
| 1583 | std::string y = regs.GetRegisterAsFloat(instr.gpr8.Value() + 1); | 1590 | std::string y = regs.GetRegisterAsFloat(instr.gpr8.Value() + 1); |