From: lhofhansl Date: Sat, 28 Oct 2017 08:33:47 +0000 (-0700) Subject: Avoid filtering low-res textures for animated meshes (incl. players) (#6562) X-Git-Tag: 0.4.17~65 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=73baeb82ef686991dfbfc1a8b915cbe8e657e33e;p=oweals%2Fminetest.git Avoid filtering low-res textures for animated meshes (incl. players) (#6562) --- diff --git a/src/content_cao.cpp b/src/content_cao.cpp index e90bb90ca..994f0492a 100644 --- a/src/content_cao.cpp +++ b/src/content_cao.cpp @@ -1355,6 +1355,13 @@ void GenericCAO::updateTextures(std::string mod) material.setFlag(video::EMF_LIGHTING, false); material.setFlag(video::EMF_BILINEAR_FILTER, false); + // don't filter low-res textures, makes them look blurry + // player models have a res of 64 + const core::dimension2d &size = texture->getOriginalSize(); + const u32 res = std::min(size.Height, size.Width); + use_trilinear_filter &= res > 64; + use_bilinear_filter &= res > 64; + m_animated_meshnode->getMaterial(i) .setFlag(video::EMF_TRILINEAR_FILTER, use_trilinear_filter); m_animated_meshnode->getMaterial(i)