summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/shader_recompiler/ir_opt/texture_pass.cpp10
-rw-r--r--src/video_core/shader_environment.cpp7
2 files changed, 7 insertions, 10 deletions
diff --git a/src/shader_recompiler/ir_opt/texture_pass.cpp b/src/shader_recompiler/ir_opt/texture_pass.cpp
index 5cead5135..597112ba4 100644
--- a/src/shader_recompiler/ir_opt/texture_pass.cpp
+++ b/src/shader_recompiler/ir_opt/texture_pass.cpp
@@ -415,11 +415,11 @@ void TexturePass(Environment& env, IR::Program& program) {
inst->SetFlags(flags);
break;
case IR::Opcode::ImageSampleImplicitLod:
- if (flags.type == TextureType::Color2D) {
- auto texture_type = ReadTextureType(env, cbuf);
- if (texture_type == TextureType::Color2DRect) {
- PatchImageSampleImplicitLod(*texture_inst.block, *texture_inst.inst);
- }
+ if (flags.type != TextureType::Color2D) {
+ break;
+ }
+ if (ReadTextureType(env, cbuf) == TextureType::Color2DRect) {
+ PatchImageSampleImplicitLod(*texture_inst.block, *texture_inst.inst);
}
break;
case IR::Opcode::ImageFetch:
diff --git a/src/video_core/shader_environment.cpp b/src/video_core/shader_environment.cpp
index 808d88eec..5f7625947 100644
--- a/src/video_core/shader_environment.cpp
+++ b/src/video_core/shader_environment.cpp
@@ -39,11 +39,8 @@ static Shader::TextureType ConvertType(const Tegra::Texture::TICEntry& entry) {
return Shader::TextureType::Color1D;
case Tegra::Texture::TextureType::Texture2D:
case Tegra::Texture::TextureType::Texture2DNoMipmap:
- if (entry.normalized_coords) {
- return Shader::TextureType::Color2D;
- } else {
- return Shader::TextureType::Color2DRect;
- }
+ return entry.normalized_coords ? Shader::TextureType::Color2D
+ : Shader::TextureType::Color2DRect;
case Tegra::Texture::TextureType::Texture3D:
return Shader::TextureType::Color3D;
case Tegra::Texture::TextureType::TextureCubemap: