[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [41754] branches/bmesh/blender/source/ blender: bmesh compiles again after dynamic paint merge

Campbell Barton ideasman42 at gmail.com
Fri Nov 11 12:20:47 CET 2011


Revision: 41754
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=41754
Author:   campbellbarton
Date:     2011-11-11 11:20:46 +0000 (Fri, 11 Nov 2011)
Log Message:
-----------
bmesh compiles again after dynamic paint merge

Modified Paths:
--------------
    branches/bmesh/blender/source/blender/blenkernel/intern/dynamicpaint.c
    branches/bmesh/blender/source/blender/editors/mesh/mesh_data.c
    branches/bmesh/blender/source/blender/render/intern/source/render_texture.c

Modified: branches/bmesh/blender/source/blender/blenkernel/intern/dynamicpaint.c
===================================================================
--- branches/bmesh/blender/source/blender/blenkernel/intern/dynamicpaint.c	2011-11-11 10:46:26 UTC (rev 41753)
+++ branches/bmesh/blender/source/blender/blenkernel/intern/dynamicpaint.c	2011-11-11 11:20:46 UTC (rev 41754)
@@ -1210,9 +1210,9 @@
 
 		/* For vertex format, count every vertex that is connected by an edge */
 		int numOfEdges = surface->canvas->dm->getNumEdges(surface->canvas->dm);
-		int numOfFaces = surface->canvas->dm->getNumFaces(surface->canvas->dm);
+		int numOfFaces = surface->canvas->dm->getNumTessFaces(surface->canvas->dm);
 		struct MEdge *edge =  surface->canvas->dm->getEdgeArray(surface->canvas->dm);
-		struct MFace *face =  surface->canvas->dm->getFaceArray(surface->canvas->dm);
+		struct MFace *face =  surface->canvas->dm->getTessFaceArray(surface->canvas->dm);
 
 		/* count number of edges per vertex */
 		for (i=0; i<numOfEdges; i++) {
@@ -1298,8 +1298,8 @@
 	else if (surface->init_color_type == MOD_DPAINT_INITIAL_TEXTURE) {
 		Tex *tex = surface->init_texture;
 		MTFace *tface;
-		MFace *mface = dm->getFaceArray(dm);
-		int numOfFaces = dm->getNumFaces(dm);
+		MFace *mface = dm->getTessFaceArray(dm);
+		int numOfFaces = dm->getNumTessFaces(dm);
 		char uvname[40];
 
 		if (!tex) return;
@@ -1373,8 +1373,8 @@
 
 		/* for vertex surface, just copy colors from mcol */
 		if (surface->format == MOD_DPAINT_SURFACE_F_VERTEX) {
-			MFace *mface = dm->getFaceArray(dm);
-			int numOfFaces = dm->getNumFaces(dm);
+			MFace *mface = dm->getTessFaceArray(dm);
+			int numOfFaces = dm->getNumTessFaces(dm);
 
 			#pragma omp parallel for schedule(static)
 			for (i=0; i<numOfFaces; i++) {
@@ -1520,7 +1520,7 @@
                                                        Object *ob,
                                                        DerivedMesh *dm)
 {	
-	DerivedMesh *result = CDDM_copy(dm);
+	DerivedMesh *result = CDDM_copy(dm, 0); /* BMESH_TODO second argument untested, may be incorrect - campbell */
 
 	if(pmd->canvas && !(pmd->canvas->flags & MOD_DPAINT_BAKING)) {
 
@@ -1540,8 +1540,8 @@
 					/* vertex color paint */
 					if (surface->type == MOD_DPAINT_SURFACE_T_PAINT) {
 
-						MFace *mface = result->getFaceArray(result);
-						int numOfFaces = result->getNumFaces(result);
+						MFace *mface = result->getTessFaceArray(result);
+						int numOfFaces = result->getNumTessFaces(result);
 						int i;
 						PaintPoint* pPoint = (PaintPoint*)sData->type_data;
 						MCol *col;
@@ -1559,7 +1559,7 @@
 						if (surface->flags & MOD_DPAINT_PREVIEW) {
 							/* Save preview results to weight layer, to be
 							*   able to share same drawing methods */
-							col = result->getFaceDataArray(result, CD_WEIGHT_MCOL);
+							col = result->getTessFaceDataArray(result, CD_WEIGHT_MCOL);
 							if (!col) col = CustomData_add_layer(&result->faceData, CD_WEIGHT_MCOL, CD_CALLOC, NULL, numOfFaces);
 
 							if (col) {
@@ -1655,10 +1655,10 @@
 						if (surface->flags & MOD_DPAINT_PREVIEW) {
 							/* Save preview results to weight layer, to be
 							*   able to share same drawing methods */
-							MFace *mface = result->getFaceArray(result);
+							MFace *mface = result->getTessFaceArray(result);
 							int numOfFaces = result->getNumFaces(result);
 							int i;
-							MCol *col = result->getFaceDataArray(result, CD_WEIGHT_MCOL);
+							MCol *col = result->getTessFaceDataArray(result, CD_WEIGHT_MCOL);
 							if (!col) col = CustomData_add_layer(&result->faceData, CD_WEIGHT_MCOL, CD_CALLOC, NULL, numOfFaces);
 
 							if (col) {
@@ -1741,7 +1741,7 @@
 	/* make a copy of dm to use as brush data */
 	if (pmd->brush) {
 		if (pmd->brush->dm) pmd->brush->dm->release(pmd->brush->dm);
-		pmd->brush->dm = CDDM_copy(result);
+		pmd->brush->dm = CDDM_copy(result, 0); /* BMESH_TODO untested second argument - campbell */
 	}
 
 	return result;
@@ -1759,7 +1759,7 @@
 void canvas_copyDerivedMesh(DynamicPaintCanvasSettings *canvas, DerivedMesh *dm)
 {
 	if (canvas->dm) canvas->dm->release(canvas->dm);
-	canvas->dm = CDDM_copy(dm);
+	canvas->dm = CDDM_copy(dm, 0); /* BMESH_TODO second argument untested, may be incorrect - campbell */
 }
 
 /*
@@ -1912,9 +1912,9 @@
 	*	TODO: Implement something more accurate / optimized?
 	*/
 	{
-		int numOfFaces = dm->getNumFaces(dm);
-		MFace *mface = dm->getFaceArray(dm);
-		MTFace *tface =  CustomData_get_layer_named(&dm->faceData, CD_MTFACE, uvname);
+		int numOfFaces = dm->getNumTessFaces(dm);
+		MFace *mface = dm->getTessFaceArray(dm);
+		MTFace *tface =  CustomData_get_layer_named(&dm->faceData, CD_MTFACE, uvname); /* BMESH_TODO, is this data valid?, possibly need loop uv's */
 
 		/* Get closest edge to that subpixel on UV map	*/
 		{
@@ -2082,7 +2082,7 @@
 
 	numOfFaces = dm->getNumFaces(dm);
 	/* mvert = dm->getVertArray(dm); */ /* UNUSED */
-	mface = dm->getFaceArray(dm);
+	mface = dm->getTessFaceArray(dm);
 
 	/* get uv layer */
 	CustomData_validate_layer_name(&dm->faceData, CD_MTFACE, surface->uvlayer_name, uvname);
@@ -2683,7 +2683,7 @@
 void dynamicPaint_doMaterialTex(BrushMaterials *bMats, float color[3], float *alpha, Object *brushOb, const float volume_co[3], const float surface_co[3], int faceIndex, short isQuad, DerivedMesh *orcoDm)
 {
 	Material *mat = bMats->mat;
-	MFace *mface = orcoDm->getFaceArray(orcoDm);
+	MFace *mface = orcoDm->getTessFaceArray(orcoDm);
 
 	/* If no material defined, use the one assigned to the mesh face */
 	if (mat == NULL) {
@@ -3000,7 +3000,7 @@
 	scene->r.subframe = prev_sfra;
 
 	subframe_updateObject(scene, ob, UPDATE_EVERYTHING, BKE_curframe(scene));
-	dm_p = CDDM_copy(brush->dm);
+	dm_p = CDDM_copy(brush->dm, 0); /* BMESH_TODO second argument untested, may be incorrect - campbell */
 	numOfVerts_p = dm_p->getNumVerts(dm_p);
 	mvert_p = dm_p->getVertArray(dm_p);
 	copy_m4_m4(prev_obmat, ob->obmat);
@@ -3104,9 +3104,9 @@
 		Bounds3D mesh_bb = {0};
 		VolumeGrid *grid = bData->grid;
 
-		dm = CDDM_copy(brush->dm);
+		dm = CDDM_copy(brush->dm, 0); /* BMESH_TODO second argument untested, may be incorrect - campbell */
 		mvert = dm->getVertArray(dm);
-		mface = dm->getFaceArray(dm);
+		mface = dm->getTessFaceArray(dm);
 		numOfVerts = dm->getNumVerts(dm);
 
 		/*	Transform collider vertices to global space

Modified: branches/bmesh/blender/source/blender/editors/mesh/mesh_data.c
===================================================================
--- branches/bmesh/blender/source/blender/editors/mesh/mesh_data.c	2011-11-11 10:46:26 UTC (rev 41753)
+++ branches/bmesh/blender/source/blender/editors/mesh/mesh_data.c	2011-11-11 11:20:46 UTC (rev 41754)
@@ -344,7 +344,7 @@
 
 int ED_mesh_color_remove_named(bContext *C, Object *ob, Mesh *me, const char *name)
 {
-	CustomData *data= (me->edit_mesh)? &me->edit_mesh->fdata: &me->fdata;
+	CustomData *data= (me->edit_btmesh)? &me->edit_btmesh->bm->ldata: &me->ldata;
 	CustomDataLayer *cdl;
 	int index;
 

Modified: branches/bmesh/blender/source/blender/render/intern/source/render_texture.c
===================================================================
--- branches/bmesh/blender/source/blender/render/intern/source/render_texture.c	2011-11-11 10:46:26 UTC (rev 41753)
+++ branches/bmesh/blender/source/blender/render/intern/source/render_texture.c	2011-11-11 11:20:46 UTC (rev 41754)
@@ -3638,7 +3638,7 @@
 
 	/* Get face data	*/
 	mvert = orcoDm->getVertArray(orcoDm);
-	mface = orcoDm->getFaceArray(orcoDm);
+	mface = orcoDm->getTessFaceArray(orcoDm);
 
 	if (!mvert || !mface || !mat) return;
 	v1=mface[face_index].v1, v2=mface[face_index].v2, v3=mface[face_index].v3;




More information about the Bf-blender-cvs mailing list