[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [48851] trunk/blender/source/blender/ blenloader/intern/readfile.c: Fix #32082: face textures lost when linking scene from another file
Sergey Sharybin
sergey.vfx at gmail.com
Thu Jul 12 09:30:51 CEST 2012
Revision: 48851
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=48851
Author: nazgul
Date: 2012-07-12 07:30:50 +0000 (Thu, 12 Jul 2012)
Log Message:
-----------
Fix #32082: face textures lost when linking scene from another file
Issue was caused by missing expand for MTexPoly-s tpages.
Modified Paths:
--------------
trunk/blender/source/blender/blenloader/intern/readfile.c
Modified: trunk/blender/source/blender/blenloader/intern/readfile.c
===================================================================
--- trunk/blender/source/blender/blenloader/intern/readfile.c 2012-07-12 07:15:32 UTC (rev 48850)
+++ trunk/blender/source/blender/blenloader/intern/readfile.c 2012-07-12 07:30:50 UTC (rev 48851)
@@ -8519,7 +8519,6 @@
static void expand_mesh(FileData *fd, Main *mainvar, Mesh *me)
{
CustomDataLayer *layer;
- MTFace *mtf;
TFace *tf;
int a, i;
@@ -8541,17 +8540,37 @@
}
}
- for (a = 0; a < me->fdata.totlayer; a++) {
- layer = &me->fdata.layers[a];
-
- if (layer->type == CD_MTFACE) {
- mtf = (MTFace*)layer->data;
- for (i = 0; i < me->totface; i++, mtf++) {
- if (mtf->tpage)
- expand_doit(fd, mainvar, mtf->tpage);
+ if (me->mface && !me->mpoly) {
+ MTFace *mtf;
+
+ for (a = 0; a < me->fdata.totlayer; a++) {
+ layer = &me->fdata.layers[a];
+
+ if (layer->type == CD_MTFACE) {
+ mtf = (MTFace *) layer->data;
+ for (i = 0; i < me->totface; i++, mtf++) {
+ if (mtf->tpage)
+ expand_doit(fd, mainvar, mtf->tpage);
+ }
}
}
}
+ else {
+ MTexPoly *mtp;
+
+ for (a = 0; a < me->pdata.totlayer; a++) {
+ layer = &me->pdata.layers[a];
+
+ if (layer->type == CD_MTEXPOLY) {
+ mtp = (MTexPoly *) layer->data;
+
+ for (i = 0; i < me->totpoly; i++, mtp++) {
+ if (mtp->tpage)
+ expand_doit(fd, mainvar, mtp->tpage);
+ }
+ }
+ }
+ }
}
/* temp struct used to transport needed info to expand_constraint_cb() */
More information about the Bf-blender-cvs
mailing list