diff options
author | Fernando Sahmkow <fsahmkow27@gmail.com> | 2021-10-30 01:52:11 +0200 |
---|---|---|
committer | Fernando Sahmkow <fsahmkow27@gmail.com> | 2021-11-16 22:11:33 +0100 |
commit | 5230378709470da56927e85c50d0524f9ce3f81b (patch) | |
tree | 6f17ba41ea5a1f60ecea9fff4bf2b25b441c0392 /src/video_core/renderer_opengl/gl_texture_cache.cpp | |
parent | Texture Cache: revert Image changes. (diff) | |
download | yuzu-5230378709470da56927e85c50d0524f9ce3f81b.tar yuzu-5230378709470da56927e85c50d0524f9ce3f81b.tar.gz yuzu-5230378709470da56927e85c50d0524f9ce3f81b.tar.bz2 yuzu-5230378709470da56927e85c50d0524f9ce3f81b.tar.lz yuzu-5230378709470da56927e85c50d0524f9ce3f81b.tar.xz yuzu-5230378709470da56927e85c50d0524f9ce3f81b.tar.zst yuzu-5230378709470da56927e85c50d0524f9ce3f81b.zip |
Diffstat (limited to '')
-rw-r--r-- | src/video_core/renderer_opengl/gl_texture_cache.cpp | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/src/video_core/renderer_opengl/gl_texture_cache.cpp b/src/video_core/renderer_opengl/gl_texture_cache.cpp index 00610ea2c..c2668fee6 100644 --- a/src/video_core/renderer_opengl/gl_texture_cache.cpp +++ b/src/video_core/renderer_opengl/gl_texture_cache.cpp @@ -1201,7 +1201,14 @@ Sampler::Sampler(TextureCacheRuntime& runtime, const TSCEntry& config) { glSamplerParameterfv(handle, GL_TEXTURE_BORDER_COLOR, config.BorderColor().data()); if (GLAD_GL_ARB_texture_filter_anisotropic || GLAD_GL_EXT_texture_filter_anisotropic) { - glSamplerParameterf(handle, GL_TEXTURE_MAX_ANISOTROPY, config.MaxAnisotropy()); + const f32 setting_anisotropic = + static_cast<f32>(1U << Settings::values.max_anisotropy.GetValue()); + const f32 game_anisotropic = std::clamp(config.MaxAnisotropy(), 1.0f, 16.0f); + const bool aument_anisotropic = + game_anisotropic > 1.0f || config.mipmap_filter == TextureMipmapFilter::Linear; + const f32 max_anisotropy = + aument_anisotropic ? std::max(game_anisotropic, setting_anisotropic) : game_anisotropic; + glSamplerParameterf(handle, GL_TEXTURE_MAX_ANISOTROPY, max_anisotropy); } else { LOG_WARNING(Render_OpenGL, "GL_ARB_texture_filter_anisotropic is required"); } |