[Bf-blender-cvs] [eeb361b] temp-material-remap: Text mat_nr index starts at 1.

Campbell Barton noreply at git.blender.org
Mon Apr 27 22:47:54 CEST 2015


Commit: eeb361b4062054abd86f20b0a70415affce5274d
Author: Campbell Barton
Date:   Tue Apr 28 06:47:15 2015 +1000
Branches: temp-material-remap
https://developer.blender.org/rBeeb361b4062054abd86f20b0a70415affce5274d

Text mat_nr index starts at 1.

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

M	source/blender/blenkernel/BKE_material.h
M	source/blender/blenkernel/intern/material.c

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

diff --git a/source/blender/blenkernel/BKE_material.h b/source/blender/blenkernel/BKE_material.h
index 6cc9465b..0cfa1ae 100644
--- a/source/blender/blenkernel/BKE_material.h
+++ b/source/blender/blenkernel/BKE_material.h
@@ -50,7 +50,7 @@ void BKE_material_free_ex(struct Material *ma, bool do_id_user);
 void test_object_materials(struct Main *bmain, struct ID *id);
 void BKE_material_resize_object(struct Object *ob, const short totcol, bool do_id_user);
 void init_material(struct Material *ma);
-void BKE_material_remap_object(struct Object *ob, unsigned int remap[]);
+void BKE_material_remap_object(struct Object *ob, const unsigned int *remap);
 struct Material *BKE_material_add(struct Main *bmain, const char *name);
 struct Material *BKE_material_copy(struct Material *ma);
 struct Material *localize_material(struct Material *ma);
diff --git a/source/blender/blenkernel/intern/material.c b/source/blender/blenkernel/intern/material.c
index 490cc29..252b675 100644
--- a/source/blender/blenkernel/intern/material.c
+++ b/source/blender/blenkernel/intern/material.c
@@ -926,7 +926,7 @@ void assign_material(Object *ob, Material *ma, short act, int assign_type)
 }
 
 
-void BKE_material_remap_object(Object *ob, unsigned int remap[])
+void BKE_material_remap_object(Object *ob, const unsigned int *remap)
 {
 	Material ***matar = give_matarar(ob);
 	const short *totcol_p = give_totcolp(ob);
@@ -997,7 +997,11 @@ void BKE_material_remap_object(Object *ob, unsigned int remap[])
 		}
 
 		for (int i = 0; i <= charinfo_len; i++) {
-			MAT_NR_REMAP(strinfo[i].mat_nr);
+			if (strinfo[i].mat_nr > 0) {
+				strinfo[i].mat_nr -= 1;
+				MAT_NR_REMAP(strinfo[i].mat_nr);
+				strinfo[i].mat_nr += 1;
+			}
 		}
 	}
 	else {




More information about the Bf-blender-cvs mailing list