[Bf-blender-cvs] [4dc91ebf814] blender2.8: Merge branch 'master' into blender2.8

Campbell Barton noreply at git.blender.org
Sat May 12 08:23:25 CEST 2018


Commit: 4dc91ebf81438c473bbd8f9a1655179335c6d42f
Author: Campbell Barton
Date:   Sat May 12 08:21:07 2018 +0200
Branches: blender2.8
https://developer.blender.org/rB4dc91ebf81438c473bbd8f9a1655179335c6d42f

Merge branch 'master' into blender2.8

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



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

diff --cc source/blender/modifiers/intern/MOD_armature.c
index 26fe2ff2e4c,0075e87e63b..8f99bc2bf39
--- a/source/blender/modifiers/intern/MOD_armature.c
+++ b/source/blender/modifiers/intern/MOD_armature.c
@@@ -111,10 -121,12 +111,11 @@@ static void updateDepsgraph(ModifierDat
  	DEG_add_object_relation(ctx->node, ctx->object, DEG_OB_COMP_TRANSFORM, "Armature Modifier");
  }
  
- static void deformVerts(ModifierData *md, const ModifierEvalContext *ctx,
-                         Mesh *mesh,
-                         float (*vertexCos)[3],
-                         int numVerts)
+ static void deformVerts(
 -        ModifierData *md, Object *ob,
 -        DerivedMesh *derivedData,
++        ModifierData *md, const ModifierEvalContext *ctx,
++        Mesh *mesh,
+         float (*vertexCos)[3],
 -        int numVerts,
 -        ModifierApplyFlag UNUSED(flag))
++        int numVerts)
  {
  	ArmatureModifierData *amd = (ArmatureModifierData *) md;
  
@@@ -159,28 -171,29 +160,29 @@@ static void deformMatricesEM
          float (*defMats)[3][3], int numVerts)
  {
  	ArmatureModifierData *amd = (ArmatureModifierData *) md;
 -	DerivedMesh *dm = derivedData;
 +	Mesh *mesh_src = get_mesh(ctx->object, em, mesh, NULL, false, false);
  
 -	if (!derivedData) dm = CDDM_from_editbmesh(em, false, false);
 -
 -	armature_deform_verts(amd->object, ob, dm, vertexCos, defMats, numVerts,
 +	armature_deform_verts(amd->object, ctx->object, mesh_src, vertexCos, defMats, numVerts,
  	                      amd->deformflag, NULL, amd->defgrp_name);
  
 -	if (!derivedData) dm->release(dm);
 +	if (mesh_src != mesh) {
 +		BKE_id_free(NULL, mesh_src);
 +	}
  }
  
- static void deformMatrices(ModifierData *md, const ModifierEvalContext *ctx, Mesh *mesh,
-                            float (*vertexCos)[3], float (*defMats)[3][3], int numVerts)
+ static void deformMatrices(
 -        ModifierData *md, Object *ob, DerivedMesh *derivedData,
++        ModifierData *md, const ModifierEvalContext *ctx, Mesh *mesh,
+         float (*vertexCos)[3], float (*defMats)[3][3], int numVerts)
  {
  	ArmatureModifierData *amd = (ArmatureModifierData *) md;
 -	DerivedMesh *dm = derivedData;
 +	Mesh *mesh_src = get_mesh(ctx->object, NULL, mesh, NULL, false, false);
  
 -	if (!derivedData) dm = CDDM_from_mesh((Mesh *)ob->data);
 -
 -	armature_deform_verts(amd->object, ob, dm, vertexCos, defMats, numVerts,
 +	armature_deform_verts(amd->object, ctx->object, mesh_src, vertexCos, defMats, numVerts,
  	                      amd->deformflag, NULL, amd->defgrp_name);
  
 -	if (!derivedData) dm->release(dm);
 +	if (mesh_src != mesh) {
 +		BKE_id_free(NULL, mesh_src);
 +	}
  }
  
  ModifierTypeInfo modifierType_Armature = {
diff --cc source/blender/modifiers/intern/MOD_array.c
index 532c6675d11,a69af265a17..4a67b8318bb
--- a/source/blender/modifiers/intern/MOD_array.c
+++ b/source/blender/modifiers/intern/MOD_array.c
@@@ -742,11 -791,13 +742,12 @@@ static Mesh *arrayModifier_doArray
  }
  
  
- static Mesh *applyModifier(ModifierData *md, const ModifierEvalContext *ctx,
-                            Mesh *mesh)
 -static DerivedMesh *applyModifier(
 -        ModifierData *md, Object *ob,
 -        DerivedMesh *dm,
 -        ModifierApplyFlag flag)
++static Mesh *applyModifier(
++        ModifierData *md, const ModifierEvalContext *ctx,
++        Mesh *mesh)
  {
  	ArrayModifierData *amd = (ArrayModifierData *) md;
 -	return arrayModifier_doArray(amd, md->scene, ob, dm, flag);
 +	return arrayModifier_doArray(amd, ctx, mesh);
  }
  
  
diff --cc source/blender/modifiers/intern/MOD_build.c
index 8e7e2e65169,c3fea60fe88..eb32c77ca1e
--- a/source/blender/modifiers/intern/MOD_build.c
+++ b/source/blender/modifiers/intern/MOD_build.c
@@@ -65,10 -66,13 +65,11 @@@ static bool dependsOnTime(ModifierData 
  	return true;
  }
  
- static Mesh *applyModifier(ModifierData *md, const ModifierEvalContext *ctx,
-                            struct Mesh *mesh)
 -static DerivedMesh *applyModifier(
 -        ModifierData *md, Object *UNUSED(ob),
 -        DerivedMesh *derivedData,
 -        ModifierApplyFlag UNUSED(flag))
++static Mesh *applyModifier(
++        ModifierData *md, const ModifierEvalContext *ctx,
++        struct Mesh *mesh)
  {
 -	DerivedMesh *dm = derivedData;
 -	DerivedMesh *result;
 +	Mesh *result;
  	BuildModifierData *bmd = (BuildModifierData *) md;
  	int i, j, k;
  	int numFaces_dst, numEdges_dst, numLoops_dst = 0;
diff --cc source/blender/modifiers/intern/MOD_cast.c
index 2eee77c4dd7,3416190b7b0..5b6ad9b8f29
--- a/source/blender/modifiers/intern/MOD_cast.c
+++ b/source/blender/modifiers/intern/MOD_cast.c
@@@ -422,26 -434,27 +422,27 @@@ static void cuboid_do
  	}
  }
  
- static void deformVerts(ModifierData *md, const ModifierEvalContext *ctx,
-                         Mesh *mesh,
-                         float (*vertexCos)[3],
-                         int numVerts)
+ static void deformVerts(
 -        ModifierData *md, Object *ob,
 -        DerivedMesh *derivedData,
++        ModifierData *md, const ModifierEvalContext *ctx,
++        Mesh *mesh,
+         float (*vertexCos)[3],
 -        int numVerts,
 -        ModifierApplyFlag UNUSED(flag))
++        int numVerts)
  {
 -	DerivedMesh *dm = NULL;
  	CastModifierData *cmd = (CastModifierData *)md;
 +	Mesh *mesh_src = get_mesh(ctx->object, NULL, mesh, NULL, false, false);
  
 -	dm = get_dm(ob, NULL, derivedData, NULL, false, false);
 +	BLI_assert(mesh_src->totvert == numVerts);
  
  	if (cmd->type == MOD_CAST_TYPE_CUBOID) {
 -		cuboid_do(cmd, ob, dm, vertexCos, numVerts);
 +		cuboid_do(cmd, ctx->object, mesh_src, vertexCos, numVerts);
  	}
  	else { /* MOD_CAST_TYPE_SPHERE or MOD_CAST_TYPE_CYLINDER */
 -		sphere_do(cmd, ob, dm, vertexCos, numVerts);
 +		sphere_do(cmd, ctx->object, mesh_src, vertexCos, numVerts);
  	}
  
 -	if (dm != derivedData)
 -		dm->release(dm);
 +	if (mesh_src != mesh) {
 +		BKE_id_free(NULL, mesh_src);
 +	}
  }
  
  static void deformVertsEM(
diff --cc source/blender/modifiers/intern/MOD_cloth.c
index cadb9e5dc96,5b7ebe94c32..268b0b22050
--- a/source/blender/modifiers/intern/MOD_cloth.c
+++ b/source/blender/modifiers/intern/MOD_cloth.c
@@@ -69,9 -72,9 +69,10 @@@ static void initData(ModifierData *md
  	cloth_init(clmd);
  }
  
- static void deformVerts(ModifierData *md, const ModifierEvalContext *ctx,
-                         DerivedMesh *derivedData, float (*vertexCos)[3],
-                         int numVerts)
+ static void deformVerts(
 -        ModifierData *md, Object *ob, DerivedMesh *derivedData, float (*vertexCos)[3],
 -        int numVerts, ModifierApplyFlag UNUSED(flag))
++        ModifierData *md, const ModifierEvalContext *ctx,
++        DerivedMesh *derivedData, float (*vertexCos)[3],
++        int numVerts)
  {
  	DerivedMesh *dm;
  	ClothModifierData *clmd = (ClothModifierData *) md;
diff --cc source/blender/modifiers/intern/MOD_collision.c
index 6ec1f4d8e5c,067f6ddf3ef..83fbf676beb
--- a/source/blender/modifiers/intern/MOD_collision.c
+++ b/source/blender/modifiers/intern/MOD_collision.c
@@@ -95,10 -95,12 +95,11 @@@ static bool dependsOnTime(ModifierData 
  	return true;
  }
  
- static void deformVerts(ModifierData *md, const ModifierEvalContext *ctx,
-                         DerivedMesh *derivedData,
-                         float (*vertexCos)[3],
-                         int UNUSED(numVerts))
+ static void deformVerts(
 -        ModifierData *md, Object *ob,
++        ModifierData *md, const ModifierEvalContext *ctx,
+         DerivedMesh *derivedData,
+         float (*vertexCos)[3],
 -        int UNUSED(numVerts),
 -        ModifierApplyFlag UNUSED(flag))
++        int UNUSED(numVerts))
  {
  	CollisionModifierData *collmd = (CollisionModifierData *) md;
  	DerivedMesh *dm = NULL;
diff --cc source/blender/modifiers/intern/MOD_decimate.c
index b004da7df6a,3d0102a8fb9..89ed8d627f1
--- a/source/blender/modifiers/intern/MOD_decimate.c
+++ b/source/blender/modifiers/intern/MOD_decimate.c
@@@ -79,11 -77,13 +79,12 @@@ static CustomDataMask requiredDataMask(
  	return dataMask;
  }
  
- static Mesh *applyModifier(ModifierData *md, const ModifierEvalContext *ctx,
-                            Mesh *meshData)
 -static DerivedMesh *applyModifier(
 -        ModifierData *md, Object *ob,
 -        DerivedMesh *derivedData,
 -        ModifierApplyFlag UNUSED(flag))
++static Mesh *applyModifier(
++        ModifierData *md, const ModifierEvalContext *ctx,
++        Mesh *meshData)
  {
  	DecimateModifierData *dmd = (DecimateModifierData *) md;
 -	DerivedMesh *dm = derivedData, *result = NULL;
 +	Mesh *mesh = meshData, *result = NULL;
  	BMesh *bm;
  	bool calc_face_normal;
  	float *vweights = NULL;
diff --cc source/blender/modifiers/intern/MOD_dynamicpaint.c
index a45cb21139c,2c1a1a3a88a..c7386f947ce
--- a/source/blender/modifiers/intern/MOD_dynamicpaint.c
+++ b/source/blender/modifiers/intern/MOD_dynamicpaint.c
@@@ -99,8 -97,16 +99,9 @@@ static CustomDataMask requiredDataMask(
  	return dataMask;
  }
  
- static DerivedMesh *applyModifier(ModifierData *md, const ModifierEvalContext *ctx,
-                                   DerivedMesh *dm)
+ static DerivedMesh *applyModifier(
 -        ModifierData *md, Object *ob,
 -        DerivedMesh *dm,
 -        ModifierApplyFlag flag)
++        ModifierData *md, const ModifierEvalContext *ctx,
++        DerivedMesh *dm)
  {
  	DynamicPaintModifierData *pmd = (DynamicPaintModifierData *) md;
  
@@@ -153,10 -181,14 +155,11 @@@ static void foreachIDLink
  			}
  		}
  	}
 -	if (pmd->brush) {
 -		walk(userData, ob, (ID **)&pmd->brush->mat, IDWALK_CB_USER);
 -	}
  }
  
- static void foreachTexLink(ModifierData *UNUSED(md), Object *UNUSED(ob),
-                            TexWalkFunc UNUSED(walk), void *UNUSED(userData))
+ static void foreachTexLink(
+         ModifierData *UNUSED(md), Object *UNUSED(ob),
+         TexWalkFunc UNUSED(walk), void *UNUSED(userData))
  {
  	//walk(userData, ob, md, ""); /* re-enable when possible */
  }
diff --cc source/blender/modifiers/intern/MOD_edgesplit.c
index d2e36c39816,a0d717f1c0f..e8ffddbde4e
--- a/source/blender/modifiers/intern/MOD_edgesplit.c
+++ b/source/blender/modifiers/intern/MOD_edgesplit.c
@@@ -124,11 -112,11 +124,12 @@@ static void initDat

@@ Diff output truncated at 10240 characters. @@



More information about the Bf-blender-cvs mailing list