[Bf-blender-cvs] [44f1495b570] master: EEVEE: use mipmaps of compressed textures (DDS)

Ethan-Hall noreply at git.blender.org
Tue Jul 19 15:19:57 CEST 2022


Commit: 44f1495b570037f06c698b0fb0a7cb21fdf0ac97
Author: Ethan-Hall
Date:   Tue Jul 19 15:20:01 2022 +0200
Branches: master
https://developer.blender.org/rB44f1495b570037f06c698b0fb0a7cb21fdf0ac97

EEVEE: use mipmaps of compressed textures (DDS)

Currently Blender generates mipmaps that override the existing ones.
This patch disables generating new mipmaps for compressed textures.

Reviewed By: fclem

Differential Revision: https://developer.blender.org/D14459

===================================================================

M	source/blender/gpu/opengl/gl_texture.cc

===================================================================

diff --git a/source/blender/gpu/opengl/gl_texture.cc b/source/blender/gpu/opengl/gl_texture.cc
index 055c8d104e2..cfb3184c4a5 100644
--- a/source/blender/gpu/opengl/gl_texture.cc
+++ b/source/blender/gpu/opengl/gl_texture.cc
@@ -310,6 +310,12 @@ void GLTexture::update_sub(
  */
 void GLTexture::generate_mipmap()
 {
+  /* Allow users to provide mipmaps stored in compressed textures.
+   * Skip generating mipmaps to avoid overriding the existing ones. */
+  if (format_flag_ & GPU_FORMAT_COMPRESSED) {
+    return;
+  }
+
   /* Some drivers have bugs when using #glGenerateMipmap with depth textures (see T56789).
    * In this case we just create a complete texture with mipmaps manually without
    * down-sampling. You must initialize the texture levels using other methods like



More information about the Bf-blender-cvs mailing list