[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [54502] trunk/blender/source/blender: Bug fix #34213 (2)
Ton Roosendaal
ton at blender.org
Tue Feb 12 16:51:05 CET 2013
Revision: 54502
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=54502
Author: ton
Date: 2013-02-12 15:51:05 +0000 (Tue, 12 Feb 2013)
Log Message:
-----------
Bug fix #34213 (2)
Adding non-RGBA float buffers as texture crashes MipMap code.
Images with less than 4 channels not supported (yet). Not sure
if we ever should even... normals, Z, vectors, UV, Index, all
don't like downsampling.
Modified Paths:
--------------
trunk/blender/source/blender/imbuf/intern/filter.c
trunk/blender/source/blender/render/intern/source/imagetexture.c
Modified: trunk/blender/source/blender/imbuf/intern/filter.c
===================================================================
--- trunk/blender/source/blender/imbuf/intern/filter.c 2013-02-12 15:49:48 UTC (rev 54501)
+++ trunk/blender/source/blender/imbuf/intern/filter.c 2013-02-12 15:51:05 UTC (rev 54502)
@@ -506,6 +506,10 @@
imb_freemipmapImBuf(ibuf);
+ /* no mipmap for non RGBA images */
+ if (ibuf->rect_float && ibuf->channels < 4)
+ return;
+
ibuf->miptot = 1;
while (curmap < IB_MIPMAP_LEVELS) {
Modified: trunk/blender/source/blender/render/intern/source/imagetexture.c
===================================================================
--- trunk/blender/source/blender/render/intern/source/imagetexture.c 2013-02-12 15:49:48 UTC (rev 54501)
+++ trunk/blender/source/blender/render/intern/source/imagetexture.c 2013-02-12 15:51:05 UTC (rev 54502)
@@ -1042,6 +1042,9 @@
IMB_makemipmap(ibuf, tex->imaflag & TEX_GAUSS_MIP);
BLI_unlock_thread(LOCK_IMAGE);
}
+ /* if no mipmap could be made, fall back on non-mipmap render */
+ if (ibuf->mipmap[0] == NULL)
+ if (tex->imaflag &= ~TEX_MIPMAP);
}
}
More information about the Bf-blender-cvs
mailing list