diff options
author | FernandoS27 <fsahmkow27@gmail.com> | 2018-11-05 19:07:08 +0100 |
---|---|---|
committer | FernandoS27 <fsahmkow27@gmail.com> | 2018-11-07 22:04:30 +0100 |
commit | ad2f47b57989dd39be5fa3ec17086640dadae87e (patch) | |
tree | 36a4b791db2ba4935db70d9b9a183c09f9c19ed4 /src/video_core/renderer_opengl | |
parent | Merge pull request #1630 from bunnei/fix-mapbufferex (diff) | |
download | yuzu-ad2f47b57989dd39be5fa3ec17086640dadae87e.tar yuzu-ad2f47b57989dd39be5fa3ec17086640dadae87e.tar.gz yuzu-ad2f47b57989dd39be5fa3ec17086640dadae87e.tar.bz2 yuzu-ad2f47b57989dd39be5fa3ec17086640dadae87e.tar.lz yuzu-ad2f47b57989dd39be5fa3ec17086640dadae87e.tar.xz yuzu-ad2f47b57989dd39be5fa3ec17086640dadae87e.tar.zst yuzu-ad2f47b57989dd39be5fa3ec17086640dadae87e.zip |
Diffstat (limited to 'src/video_core/renderer_opengl')
-rw-r--r-- | src/video_core/renderer_opengl/gl_shader_decompiler.cpp | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/src/video_core/renderer_opengl/gl_shader_decompiler.cpp b/src/video_core/renderer_opengl/gl_shader_decompiler.cpp index 09b003c59..98a983d2d 100644 --- a/src/video_core/renderer_opengl/gl_shader_decompiler.cpp +++ b/src/video_core/renderer_opengl/gl_shader_decompiler.cpp @@ -2742,12 +2742,12 @@ private: } case 3: { if (is_array) { - UNIMPLEMENTED_MSG("3-coordinate arrays not fully implemented"); - const std::string x = regs.GetRegisterAsFloat(instr.gpr8); - const std::string y = regs.GetRegisterAsFloat(instr.gpr20); - coord = "vec2 coords = vec2(" + x + ", " + y + ");"; - texture_type = Tegra::Shader::TextureType::Texture2D; - is_array = false; + const std::string index = regs.GetRegisterAsInteger(instr.gpr8); + const std::string x = regs.GetRegisterAsFloat(instr.gpr8.Value() + 1); + const std::string y = regs.GetRegisterAsFloat(instr.gpr8.Value() + 2); + const std::string z = regs.GetRegisterAsFloat(instr.gpr20); + coord = + "vec4 coords = vec4(" + x + ", " + y + ", " + z + ", " + index + ");"; } else { const std::string x = regs.GetRegisterAsFloat(instr.gpr8); const std::string y = regs.GetRegisterAsFloat(instr.gpr8.Value() + 1); |