[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [44272] trunk/blender/source/blender: fix [#30266] B-Mesh: Issue with Weight Painting
Campbell Barton
ideasman42 at gmail.com
Mon Feb 20 01:18:43 CET 2012
Revision: 44272
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=44272
Author: campbellbarton
Date: 2012-02-20 00:18:35 +0000 (Mon, 20 Feb 2012)
Log Message:
-----------
fix [#30266] B-Mesh: Issue with Weight Painting
thanks to Nicholas Bishop for finding the cause of the problem.
don't tesselate on load, this means me->mface will be NULL by default.
we may need to have this set if existing uses of this array are not resolved before release - so add a define USE_TESSFACE_DEFAULT, to change this easily.
this is a rather indirect fix - need to take care here.
Modified Paths:
--------------
trunk/blender/source/blender/blenloader/intern/readfile.c
trunk/blender/source/blender/editors/mesh/bmesh_tools.c
trunk/blender/source/blender/editors/mesh/bmesh_utils.c
trunk/blender/source/blender/makesdna/DNA_mesh_types.h
trunk/blender/source/blender/makesrna/intern/rna_mesh.c
Modified: trunk/blender/source/blender/blenloader/intern/readfile.c
===================================================================
--- trunk/blender/source/blender/blenloader/intern/readfile.c 2012-02-19 23:36:10 UTC (rev 44271)
+++ trunk/blender/source/blender/blenloader/intern/readfile.c 2012-02-20 00:18:35 UTC (rev 44272)
@@ -3703,7 +3703,11 @@
* waiting until edit mode has been entered/exited, making it easier
* to recognize problems that would otherwise only show up after edits).
*/
+#ifdef USE_TESSFACE_DEFAULT
BKE_mesh_tessface_calc(me);
+#else
+ BKE_mesh_tessface_clear(me);
+#endif
me->id.flag -= LIB_NEEDLINK;
}
Modified: trunk/blender/source/blender/editors/mesh/bmesh_tools.c
===================================================================
--- trunk/blender/source/blender/editors/mesh/bmesh_tools.c 2012-02-19 23:36:10 UTC (rev 44271)
+++ trunk/blender/source/blender/editors/mesh/bmesh_tools.c 2012-02-20 00:18:35 UTC (rev 44272)
@@ -3262,7 +3262,8 @@
EDBM_CallOpf(em, wmop, "del geom=%hvef context=%i", BM_ELEM_SELECT, DEL_VERTS);
BM_mesh_normals_update(bmnew);
- BMO_op_callf(bmnew, "bmesh_to_mesh mesh=%p object=%p", basenew->object->data, basenew->object);
+ BMO_op_callf(bmnew, "bmesh_to_mesh mesh=%p object=%p notesselation=%i",
+ basenew->object->data, basenew->object, TRUE);
BM_mesh_free(bmnew);
((Mesh *)basenew->object->data)->edit_btmesh = NULL;
Modified: trunk/blender/source/blender/editors/mesh/bmesh_utils.c
===================================================================
--- trunk/blender/source/blender/editors/mesh/bmesh_utils.c 2012-02-19 23:36:10 UTC (rev 44271)
+++ trunk/blender/source/blender/editors/mesh/bmesh_utils.c 2012-02-20 00:18:35 UTC (rev 44272)
@@ -296,6 +296,11 @@
BMesh *bm = me->edit_btmesh->bm;
BMO_op_callf(bm, "object_load_bmesh scene=%p object=%p", scene, ob);
+
+#ifdef USE_TESSFACE_DEFAULT
+ BKE_mesh_tessface_calc(me);
+#endif
+
}
void EDBM_FreeEditBMesh(BMEditMesh *tm)
@@ -520,7 +525,7 @@
#endif
- BMO_op_callf(em->bm, "bmesh_to_mesh mesh=%p notesselation=%i", &um->me, 1);
+ BMO_op_callf(em->bm, "bmesh_to_mesh mesh=%p notesselation=%i", &um->me, TRUE);
um->selectmode = em->selectmode;
return um;
Modified: trunk/blender/source/blender/makesdna/DNA_mesh_types.h
===================================================================
--- trunk/blender/source/blender/makesdna/DNA_mesh_types.h 2012-02-19 23:36:10 UTC (rev 44271)
+++ trunk/blender/source/blender/makesdna/DNA_mesh_types.h 2012-02-20 00:18:35 UTC (rev 44272)
@@ -229,4 +229,7 @@
#define USE_BMESH_SAVE_WITHOUT_MFACE
+/* enable this so meshes get tessfaces calculated by default */
+// #define USE_TESSFACE_DEFAULT
+
#endif
Modified: trunk/blender/source/blender/makesrna/intern/rna_mesh.c
===================================================================
--- trunk/blender/source/blender/makesrna/intern/rna_mesh.c 2012-02-19 23:36:10 UTC (rev 44271)
+++ trunk/blender/source/blender/makesrna/intern/rna_mesh.c 2012-02-20 00:18:35 UTC (rev 44272)
@@ -2074,7 +2074,7 @@
PropertyRNA *prop;
FunctionRNA *func;
- PropertyRNA *parm;
+ //PropertyRNA *parm;
RNA_def_property_srna(cprop, "MeshPolygons");
srna= RNA_def_struct(brna, "MeshPolygons", NULL);
@@ -2087,7 +2087,7 @@
func= RNA_def_function(srna, "add", "ED_mesh_polys_add");
RNA_def_function_flag(func, FUNC_USE_REPORTS);
- parm= RNA_def_int(func, "count", 0, 0, INT_MAX, "Count", "Number of polygons to add", 0, INT_MAX);
+ RNA_def_int(func, "count", 0, 0, INT_MAX, "Count", "Number of polygons to add", 0, INT_MAX);
}
More information about the Bf-blender-cvs
mailing list