Browse Source

Fix Image:getMipmapCount returning greater than 1 when a compressed texture is loaded without mipmaps in its source data but with mipmaps=true set.

Alex Szpakowski 7 years ago
parent
commit
70bf18182d
1 changed files with 3 additions and 2 deletions
  1. 3 2
      src/modules/graphics/Image.cpp

+ 3 - 2
src/modules/graphics/Image.cpp

@@ -86,13 +86,14 @@ void Image::init(PixelFormat fmt, int w, int h, const Settings &settings)
 	width  = (int) (pixelWidth / settings.dpiScale + 0.5);
 	height = (int) (pixelHeight / settings.dpiScale + 0.5);
 
-	mipmapCount = mipmapsType == MIPMAPS_NONE ? 1 : getMipmapCount(w, h);
 	format = fmt;
 
 	if (isCompressed() && mipmapsType == MIPMAPS_GENERATED)
 		mipmapsType = MIPMAPS_NONE;
 
-	if (getMipmapCount() > 1)
+	mipmapCount = mipmapsType == MIPMAPS_NONE ? 1 : getMipmapCount(w, h);
+
+	if (mipmapCount > 1)
 		filter.mipmap = defaultMipmapFilter;
 
 	initQuad();