[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [20538] branches/blender2.5/blender/source /blender: Deform modifiers can now use useRenderParams and isFinalCalc in modifier stack as non-deforming and constructing modifiers can already - please check for problems or if i missed something

Daniel Genrich daniel.genrich at gmx.net
Sun May 31 19:20:57 CEST 2009


Revision: 20538
          http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=20538
Author:   genscher
Date:     2009-05-31 19:20:57 +0200 (Sun, 31 May 2009)

Log Message:
-----------
Deform modifiers can now use useRenderParams and isFinalCalc in modifier stack as non-deforming and constructing modifiers can already - please check for problems or if i missed something

Modified Paths:
--------------
    branches/blender2.5/blender/source/blender/blenkernel/BKE_modifier.h
    branches/blender2.5/blender/source/blender/blenkernel/intern/DerivedMesh.c
    branches/blender2.5/blender/source/blender/blenkernel/intern/displist.c
    branches/blender2.5/blender/source/blender/blenkernel/intern/lattice.c
    branches/blender2.5/blender/source/blender/blenkernel/intern/modifier.c
    branches/blender2.5/blender/source/blender/editors/object/object_modifier.c

Modified: branches/blender2.5/blender/source/blender/blenkernel/BKE_modifier.h
===================================================================
--- branches/blender2.5/blender/source/blender/blenkernel/BKE_modifier.h	2009-05-31 16:55:15 UTC (rev 20537)
+++ branches/blender2.5/blender/source/blender/blenkernel/BKE_modifier.h	2009-05-31 17:20:57 UTC (rev 20538)
@@ -124,7 +124,8 @@
 	 */
 	void (*deformVerts)(struct ModifierData *md, struct Object *ob,
 	                    struct DerivedMesh *derivedData,
-	                    float (*vertexCos)[3], int numVerts);
+	                    float (*vertexCos)[3], int numVerts,
+	                    int useRenderParams, int isFinalCalc);
 
 	/* Like deformVerts but called during editmode (for supporting modifiers)
 	 */

Modified: branches/blender2.5/blender/source/blender/blenkernel/intern/DerivedMesh.c
===================================================================
--- branches/blender2.5/blender/source/blender/blenkernel/intern/DerivedMesh.c	2009-05-31 16:55:15 UTC (rev 20537)
+++ branches/blender2.5/blender/source/blender/blenkernel/intern/DerivedMesh.c	2009-05-31 17:20:57 UTC (rev 20538)
@@ -1403,7 +1403,7 @@
 		int numVerts;
 		float (*deformedVerts)[3] = mesh_getVertexCos(me, &numVerts);
 
-		mti->deformVerts(md, ob, NULL, deformedVerts, numVerts);
+		mti->deformVerts(md, ob, NULL, deformedVerts, numVerts, 0, 0);
 		dm = getMeshDerivedMesh(me, ob, deformedVerts);
 
 		MEM_freeN(deformedVerts);
@@ -1628,7 +1628,7 @@
 				if(!deformedVerts)
 					deformedVerts = mesh_getVertexCos(me, &numVerts);
 
-				mti->deformVerts(md, ob, NULL, deformedVerts, numVerts);
+				mti->deformVerts(md, ob, NULL, deformedVerts, numVerts, useRenderParams, useDeform);
 			} else {
 				break;
 			}
@@ -1709,7 +1709,7 @@
 				}
 			}
 
-			mti->deformVerts(md, ob, dm, deformedVerts, numVerts);
+			mti->deformVerts(md, ob, dm, deformedVerts, numVerts, useRenderParams, useDeform);
 		} else {
 			DerivedMesh *ndm;
 

Modified: branches/blender2.5/blender/source/blender/blenkernel/intern/displist.c
===================================================================
--- branches/blender2.5/blender/source/blender/blenkernel/intern/displist.c	2009-05-31 16:55:15 UTC (rev 20537)
+++ branches/blender2.5/blender/source/blender/blenkernel/intern/displist.c	2009-05-31 17:20:57 UTC (rev 20538)
@@ -1256,7 +1256,7 @@
 				originalVerts = MEM_dupallocN(deformedVerts);
 			}
 			
-			mti->deformVerts(md, ob, NULL, deformedVerts, numVerts);
+			mti->deformVerts(md, ob, NULL, deformedVerts, numVerts, forRender, editmode);
 
 			if (md==preTesselatePoint)
 				break;
@@ -1317,7 +1317,7 @@
 				fp+= offs;
 			}
 			
-			mti->deformVerts(md, ob, NULL, (float(*)[3]) allverts, totvert);
+			mti->deformVerts(md, ob, NULL, (float(*)[3]) allverts, totvert, forRender, editmode);
 			
 			fp= allverts;
 			for (dl=dispbase->first; dl; dl=dl->next) {
@@ -1329,7 +1329,7 @@
 		}
 		else {
 			for (dl=dispbase->first; dl; dl=dl->next) {
-				mti->deformVerts(md, ob, NULL, (float(*)[3]) dl->verts, (dl->type==DL_INDEX3)?dl->nr:dl->parts*dl->nr);
+				mti->deformVerts(md, ob, NULL, (float(*)[3]) dl->verts, (dl->type==DL_INDEX3)?dl->nr:dl->parts*dl->nr, forRender, editmode);
 			}
 		}
 	}

Modified: branches/blender2.5/blender/source/blender/blenkernel/intern/lattice.c
===================================================================
--- branches/blender2.5/blender/source/blender/blenkernel/intern/lattice.c	2009-05-31 16:55:15 UTC (rev 20537)
+++ branches/blender2.5/blender/source/blender/blenkernel/intern/lattice.c	2009-05-31 17:20:57 UTC (rev 20538)
@@ -924,7 +924,7 @@
 		if (mti->type!=eModifierTypeType_OnlyDeform) continue;
 
 		if (!vertexCos) vertexCos = lattice_getVertexCos(ob, &numVerts);
-		mti->deformVerts(md, ob, NULL, vertexCos, numVerts);
+		mti->deformVerts(md, ob, NULL, vertexCos, numVerts, 0, 0);
 	}
 
 	/* always displist to make this work like derivedmesh */

Modified: branches/blender2.5/blender/source/blender/blenkernel/intern/modifier.c
===================================================================
--- branches/blender2.5/blender/source/blender/blenkernel/intern/modifier.c	2009-05-31 16:55:15 UTC (rev 20537)
+++ branches/blender2.5/blender/source/blender/blenkernel/intern/modifier.c	2009-05-31 17:20:57 UTC (rev 20538)
@@ -187,7 +187,7 @@
 
 static void curveModifier_deformVerts(
 				      ModifierData *md, Object *ob, DerivedMesh *derivedData,
-	  float (*vertexCos)[3], int numVerts)
+	  float (*vertexCos)[3], int numVerts, int useRenderParams, int isFinalCalc)
 {
 	CurveModifierData *cmd = (CurveModifierData*) md;
 
@@ -203,7 +203,7 @@
 
 	if(!derivedData) dm = CDDM_from_editmesh(editData, ob->data);
 
-	curveModifier_deformVerts(md, ob, dm, vertexCos, numVerts);
+	curveModifier_deformVerts(md, ob, dm, vertexCos, numVerts, 0, 0);
 
 	if(!derivedData) dm->release(dm);
 }
@@ -276,7 +276,7 @@
 
 static void latticeModifier_deformVerts(
 					ModifierData *md, Object *ob, DerivedMesh *derivedData,
-     float (*vertexCos)[3], int numVerts)
+     float (*vertexCos)[3], int numVerts, int useRenderParams, int isFinalCalc)
 {
 	LatticeModifierData *lmd = (LatticeModifierData*) md;
 
@@ -295,7 +295,7 @@
 
 	if(!derivedData) dm = CDDM_from_editmesh(editData, ob->data);
 
-	latticeModifier_deformVerts(md, ob, dm, vertexCos, numVerts);
+	latticeModifier_deformVerts(md, ob, dm, vertexCos, numVerts, 0, 0);
 
 	if(!derivedData) dm->release(dm);
 }
@@ -3686,7 +3686,7 @@
 
 static void displaceModifier_deformVerts(
 					 ModifierData *md, Object *ob, DerivedMesh *derivedData,
-      float (*vertexCos)[3], int numVerts)
+      float (*vertexCos)[3], int numVerts, int useRenderParams, int isFinalCalc)
 {
 	DerivedMesh *dm;
 
@@ -4371,7 +4371,7 @@
 
 static void smoothModifier_deformVerts(
 				       ModifierData *md, Object *ob, DerivedMesh *derivedData,
-	   float (*vertexCos)[3], int numVerts)
+	   float (*vertexCos)[3], int numVerts, int useRenderParams, int isFinalCalc)
 {
 	DerivedMesh *dm;
 
@@ -4951,7 +4951,7 @@
 
 static void castModifier_deformVerts(
 				     ModifierData *md, Object *ob, DerivedMesh *derivedData,
-	 float (*vertexCos)[3], int numVerts)
+	 float (*vertexCos)[3], int numVerts, int useRenderParams, int isFinalCalc)
 {
 	DerivedMesh *dm = derivedData;
 	CastModifierData *cmd = (CastModifierData *)md;
@@ -5354,7 +5354,7 @@
 
 static void waveModifier_deformVerts(
 				     ModifierData *md, Object *ob, DerivedMesh *derivedData,
-	 float (*vertexCos)[3], int numVerts)
+	 float (*vertexCos)[3], int numVerts, int useRenderParams, int isFinalCalc)
 {
 	DerivedMesh *dm;
 	WaveModifierData *wmd = (WaveModifierData *)md;
@@ -5459,7 +5459,7 @@
 
 static void armatureModifier_deformVerts(
 					 ModifierData *md, Object *ob, DerivedMesh *derivedData,
-      float (*vertexCos)[3], int numVerts)
+      float (*vertexCos)[3], int numVerts, int useRenderParams, int isFinalCalc)
 {
 	ArmatureModifierData *amd = (ArmatureModifierData*) md;
 
@@ -5580,7 +5580,7 @@
 
 static void hookModifier_deformVerts(
 				     ModifierData *md, Object *ob, DerivedMesh *derivedData,
-	 float (*vertexCos)[3], int numVerts)
+	 float (*vertexCos)[3], int numVerts, int useRenderParams, int isFinalCalc)
 {
 	HookModifierData *hmd = (HookModifierData*) md;
 	float vec[3], mat[4][4];
@@ -5701,7 +5701,7 @@
 
 	if(!derivedData) dm = CDDM_from_editmesh(editData, ob->data);
 
-	hookModifier_deformVerts(md, ob, derivedData, vertexCos, numVerts);
+	hookModifier_deformVerts(md, ob, derivedData, vertexCos, numVerts, 0, 0);
 
 	if(!derivedData) dm->release(dm);
 }
@@ -5710,7 +5710,7 @@
 
 static void softbodyModifier_deformVerts(
 					 ModifierData *md, Object *ob, DerivedMesh *derivedData,
-      float (*vertexCos)[3], int numVerts)
+      float (*vertexCos)[3], int numVerts, int useRenderParams, int isFinalCalc)
 {
 	sbObjectStep(md->scene, ob, (float)md->scene->r.cfra, vertexCos, numVerts);
 }
@@ -5898,7 +5898,7 @@
 
 static void collisionModifier_deformVerts(
 					  ModifierData *md, Object *ob, DerivedMesh *derivedData,
-       float (*vertexCos)[3], int numVerts)
+       float (*vertexCos)[3], int numVerts, int useRenderParams, int isFinalCalc)
 {
 	CollisionModifierData *collmd = (CollisionModifierData*) md;
 	DerivedMesh *dm = NULL;
@@ -6060,7 +6060,7 @@
 
 static void surfaceModifier_deformVerts(
 					  ModifierData *md, Object *ob, DerivedMesh *derivedData,
-       float (*vertexCos)[3], int numVerts)
+       float (*vertexCos)[3], int numVerts, int useRenderParams, int isFinalCalc)
 {
 	SurfaceModifierData *surmd = (SurfaceModifierData*) md;
 	unsigned int numverts = 0, i = 0;
@@ -6268,7 +6268,7 @@
 /* saves the current emitter state for a particle system and calculates particles */
 static void particleSystemModifier_deformVerts(
 					       ModifierData *md, Object *ob, DerivedMesh *derivedData,
-	    float (*vertexCos)[3], int numVerts)
+	    float (*vertexCos)[3], int numVerts, int useRenderParams, int isFinalCalc)
 {
 	DerivedMesh *dm = derivedData;
 	ParticleSystemModifierData *psmd= (ParticleSystemModifierData*) md;
@@ -7789,7 +7789,7 @@
 
 static void meshdeformModifier_deformVerts(
 					   ModifierData *md, Object *ob, DerivedMesh *derivedData,
-	float (*vertexCos)[3], int numVerts)
+	float (*vertexCos)[3], int numVerts, int useRenderParams, int isFinalCalc)
 {
 	DerivedMesh *dm;
 
@@ -7937,7 +7937,7 @@
 	walk(userData, ob, &smd->auxTarget);
 }
 
-static void shrinkwrapModifier_deformVerts(ModifierData *md, Object *ob, DerivedMesh *derivedData, float (*vertexCos)[3], int numVerts)
+static void shrinkwrapModifier_deformVerts(ModifierData *md, Object *ob, DerivedMesh *derivedData, float (*vertexCos)[3], int numVerts, int useRenderParams, int isFinalCalc)
 {
 	DerivedMesh *dm = NULL;
 	CustomDataMask dataMask = shrinkwrapModifier_requiredDataMask(md);
@@ -8051,7 +8051,7 @@
 		dag_add_relation(forest, dag_get_node(forest, smd->origin), obNode, DAG_RL_OB_DATA, "SimpleDeform Modifier");
 }
 
-static void simpledeformModifier_deformVerts(ModifierData *md, Object *ob, DerivedMesh *derivedData, float (*vertexCos)[3], int numVerts)
+static void simpledeformModifier_deformVerts(ModifierData *md, Object *ob, DerivedMesh *derivedData, float (*vertexCos)[3], int numVerts, int useRenderParams, int isFinalCalc)
 {
 	DerivedMesh *dm = NULL;
 	CustomDataMask dataMask = simpledeformModifier_requiredDataMask(md);

Modified: branches/blender2.5/blender/source/blender/editors/object/object_modifier.c

@@ Diff output truncated at 10240 characters. @@




More information about the Bf-blender-cvs mailing list