add UNUSED() to modifiers, also removed some unused args.
This commit is contained in:
@@ -315,7 +315,7 @@ int modifiers_isParticleEnabled(struct Object *ob);
|
|||||||
struct Object *modifiers_isDeformedByArmature(struct Object *ob);
|
struct Object *modifiers_isDeformedByArmature(struct Object *ob);
|
||||||
struct Object *modifiers_isDeformedByLattice(struct Object *ob);
|
struct Object *modifiers_isDeformedByLattice(struct Object *ob);
|
||||||
int modifiers_usesArmature(struct Object *ob, struct bArmature *arm);
|
int modifiers_usesArmature(struct Object *ob, struct bArmature *arm);
|
||||||
int modifiers_isCorrectableDeformed(struct Scene *scene, struct Object *ob);
|
int modifiers_isCorrectableDeformed(struct Object *ob);
|
||||||
void modifier_freeTemporaryData(struct ModifierData *md);
|
void modifier_freeTemporaryData(struct ModifierData *md);
|
||||||
|
|
||||||
int modifiers_indexInObject(struct Object *ob, struct ModifierData *md);
|
int modifiers_indexInObject(struct Object *ob, struct ModifierData *md);
|
||||||
|
|||||||
@@ -59,7 +59,7 @@ ModifierTypeInfo *modifierType_getInfo(ModifierType type)
|
|||||||
static int types_init = 1;
|
static int types_init = 1;
|
||||||
|
|
||||||
if (types_init) {
|
if (types_init) {
|
||||||
modifier_type_init(types, type); /* MOD_utils.c */
|
modifier_type_init(types); /* MOD_utils.c */
|
||||||
types_init= 0;
|
types_init= 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -492,7 +492,7 @@ int modifier_isCorrectableDeformed(ModifierData *md)
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
int modifiers_isCorrectableDeformed(struct Scene *scene, Object *ob)
|
int modifiers_isCorrectableDeformed(Object *ob)
|
||||||
{
|
{
|
||||||
ModifierData *md = modifiers_getVirtualModifierList(ob);
|
ModifierData *md = modifiers_getVirtualModifierList(ob);
|
||||||
|
|
||||||
|
|||||||
@@ -2145,7 +2145,7 @@ static void createTransEditVerts(bContext *C, TransInfo *t)
|
|||||||
/* detect CrazySpace [tm] */
|
/* detect CrazySpace [tm] */
|
||||||
if(propmode==0) {
|
if(propmode==0) {
|
||||||
if(modifiers_getCageIndex(t->scene, t->obedit, NULL, 1)>=0) {
|
if(modifiers_getCageIndex(t->scene, t->obedit, NULL, 1)>=0) {
|
||||||
if(modifiers_isCorrectableDeformed(t->scene, t->obedit)) {
|
if(modifiers_isCorrectableDeformed(t->obedit)) {
|
||||||
/* check if we can use deform matrices for modifier from the
|
/* check if we can use deform matrices for modifier from the
|
||||||
start up to stack, they are more accurate than quats */
|
start up to stack, they are more accurate than quats */
|
||||||
totleft= editmesh_get_first_deform_matrices(t->scene, t->obedit, em, &defmats, &defcos);
|
totleft= editmesh_get_first_deform_matrices(t->scene, t->obedit, em, &defmats, &defcos);
|
||||||
|
|||||||
@@ -69,6 +69,6 @@ extern ModifierTypeInfo modifierType_Solidify;
|
|||||||
extern ModifierTypeInfo modifierType_Screw;
|
extern ModifierTypeInfo modifierType_Screw;
|
||||||
|
|
||||||
/* MOD_util.c */
|
/* MOD_util.c */
|
||||||
void modifier_type_init(ModifierTypeInfo *types[], ModifierType type);
|
void modifier_type_init(ModifierTypeInfo *types[]);
|
||||||
|
|
||||||
#endif //MOD_MODIFIERTYPES_H
|
#endif //MOD_MODIFIERTYPES_H
|
||||||
|
|||||||
@@ -35,6 +35,7 @@
|
|||||||
#include "DNA_armature_types.h"
|
#include "DNA_armature_types.h"
|
||||||
#include "DNA_object_types.h"
|
#include "DNA_object_types.h"
|
||||||
|
|
||||||
|
#include "BKE_utildefines.h"
|
||||||
#include "BKE_cdderivedmesh.h"
|
#include "BKE_cdderivedmesh.h"
|
||||||
#include "BKE_lattice.h"
|
#include "BKE_lattice.h"
|
||||||
#include "BKE_modifier.h"
|
#include "BKE_modifier.h"
|
||||||
@@ -63,7 +64,7 @@ static void copyData(ModifierData *md, ModifierData *target)
|
|||||||
strncpy(tamd->defgrp_name, amd->defgrp_name, 32);
|
strncpy(tamd->defgrp_name, amd->defgrp_name, 32);
|
||||||
}
|
}
|
||||||
|
|
||||||
static CustomDataMask requiredDataMask(Object *ob, ModifierData *md)
|
static CustomDataMask requiredDataMask(Object *UNUSED(ob), ModifierData *UNUSED(md))
|
||||||
{
|
{
|
||||||
CustomDataMask dataMask = 0;
|
CustomDataMask dataMask = 0;
|
||||||
|
|
||||||
@@ -73,7 +74,7 @@ static CustomDataMask requiredDataMask(Object *ob, ModifierData *md)
|
|||||||
return dataMask;
|
return dataMask;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int isDisabled(ModifierData *md, int useRenderParams)
|
static int isDisabled(ModifierData *md, int UNUSED(useRenderParams))
|
||||||
{
|
{
|
||||||
ArmatureModifierData *amd = (ArmatureModifierData*) md;
|
ArmatureModifierData *amd = (ArmatureModifierData*) md;
|
||||||
|
|
||||||
@@ -90,9 +91,10 @@ static void foreachObjectLink(
|
|||||||
walk(userData, ob, &amd->object);
|
walk(userData, ob, &amd->object);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void updateDepgraph(
|
static void updateDepgraph(ModifierData *md, DagForest *forest,
|
||||||
ModifierData *md, DagForest *forest, struct Scene *scene, Object *ob,
|
struct Scene *UNUSED(scene),
|
||||||
DagNode *obNode)
|
Object *UNUSED(ob),
|
||||||
|
DagNode *obNode)
|
||||||
{
|
{
|
||||||
ArmatureModifierData *amd = (ArmatureModifierData*) md;
|
ArmatureModifierData *amd = (ArmatureModifierData*) md;
|
||||||
|
|
||||||
@@ -104,9 +106,12 @@ static void updateDepgraph(
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static void deformVerts(
|
static void deformVerts(ModifierData *md, Object *ob,
|
||||||
ModifierData *md, Object *ob, DerivedMesh *derivedData,
|
DerivedMesh *derivedData,
|
||||||
float (*vertexCos)[3], int numVerts, int useRenderParams, int isFinalCalc)
|
float (*vertexCos)[3],
|
||||||
|
int numVerts,
|
||||||
|
int UNUSED(useRenderParams),
|
||||||
|
int UNUSED(isFinalCalc))
|
||||||
{
|
{
|
||||||
ArmatureModifierData *amd = (ArmatureModifierData*) md;
|
ArmatureModifierData *amd = (ArmatureModifierData*) md;
|
||||||
|
|
||||||
|
|||||||
@@ -101,8 +101,8 @@ static void foreachObjectLink(
|
|||||||
walk(userData, ob, &amd->offset_ob);
|
walk(userData, ob, &amd->offset_ob);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void updateDepgraph(ModifierData *md, DagForest *forest, struct Scene *scene,
|
static void updateDepgraph(ModifierData *md, DagForest *forest,
|
||||||
Object *ob, DagNode *obNode)
|
struct Scene *UNUSED(scene), Object *UNUSED(ob), DagNode *obNode)
|
||||||
{
|
{
|
||||||
ArrayModifierData *amd = (ArrayModifierData*) md;
|
ArrayModifierData *amd = (ArrayModifierData*) md;
|
||||||
|
|
||||||
@@ -731,7 +731,7 @@ static DerivedMesh *arrayModifier_doArray(ArrayModifierData *amd,
|
|||||||
|
|
||||||
static DerivedMesh *applyModifier(
|
static DerivedMesh *applyModifier(
|
||||||
ModifierData *md, Object *ob, DerivedMesh *derivedData,
|
ModifierData *md, Object *ob, DerivedMesh *derivedData,
|
||||||
int useRenderParams, int isFinalCalc)
|
int UNUSED(useRenderParams), int UNUSED(isFinalCalc))
|
||||||
{
|
{
|
||||||
DerivedMesh *result;
|
DerivedMesh *result;
|
||||||
ArrayModifierData *amd = (ArrayModifierData*) md;
|
ArrayModifierData *amd = (ArrayModifierData*) md;
|
||||||
@@ -745,7 +745,7 @@ static DerivedMesh *applyModifier(
|
|||||||
}
|
}
|
||||||
|
|
||||||
static DerivedMesh *applyModifierEM(
|
static DerivedMesh *applyModifierEM(
|
||||||
ModifierData *md, Object *ob, struct EditMesh *editData,
|
ModifierData *md, Object *ob, struct EditMesh *UNUSED(editData),
|
||||||
DerivedMesh *derivedData)
|
DerivedMesh *derivedData)
|
||||||
{
|
{
|
||||||
return applyModifier(md, ob, derivedData, 0, 1);
|
return applyModifier(md, ob, derivedData, 0, 1);
|
||||||
|
|||||||
@@ -66,7 +66,7 @@ static void copyData(ModifierData *md, ModifierData *target)
|
|||||||
strncpy(tbmd->defgrp_name, bmd->defgrp_name, 32);
|
strncpy(tbmd->defgrp_name, bmd->defgrp_name, 32);
|
||||||
}
|
}
|
||||||
|
|
||||||
static CustomDataMask requiredDataMask(Object *ob, ModifierData *md)
|
static CustomDataMask requiredDataMask(Object *UNUSED(ob), ModifierData *md)
|
||||||
{
|
{
|
||||||
BevelModifierData *bmd = (BevelModifierData *)md;
|
BevelModifierData *bmd = (BevelModifierData *)md;
|
||||||
CustomDataMask dataMask = 0;
|
CustomDataMask dataMask = 0;
|
||||||
@@ -77,9 +77,10 @@ static CustomDataMask requiredDataMask(Object *ob, ModifierData *md)
|
|||||||
return dataMask;
|
return dataMask;
|
||||||
}
|
}
|
||||||
|
|
||||||
static DerivedMesh *applyModifier(
|
static DerivedMesh *applyModifier(ModifierData *md, Object *UNUSED(ob),
|
||||||
ModifierData *md, Object *ob, DerivedMesh *derivedData,
|
DerivedMesh *derivedData,
|
||||||
int useRenderParams, int isFinalCalc)
|
int UNUSED(useRenderParams),
|
||||||
|
int UNUSED(isFinalCalc))
|
||||||
{
|
{
|
||||||
DerivedMesh *result;
|
DerivedMesh *result;
|
||||||
BME_Mesh *bm;
|
BME_Mesh *bm;
|
||||||
@@ -107,9 +108,9 @@ static DerivedMesh *applyModifier(
|
|||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
static DerivedMesh *applyModifierEM(
|
static DerivedMesh *applyModifierEM(ModifierData *md, Object *ob,
|
||||||
ModifierData *md, Object *ob, EditMesh *editData,
|
EditMesh *UNUSED(editData),
|
||||||
DerivedMesh *derivedData)
|
DerivedMesh *derivedData)
|
||||||
{
|
{
|
||||||
return applyModifier(md, ob, derivedData, 0, 1);
|
return applyModifier(md, ob, derivedData, 0, 1);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -32,6 +32,7 @@
|
|||||||
|
|
||||||
#include "DNA_object_types.h"
|
#include "DNA_object_types.h"
|
||||||
|
|
||||||
|
#include "BKE_utildefines.h"
|
||||||
#include "BKE_cdderivedmesh.h"
|
#include "BKE_cdderivedmesh.h"
|
||||||
#include "BKE_modifier.h"
|
#include "BKE_modifier.h"
|
||||||
|
|
||||||
@@ -49,7 +50,7 @@ static void copyData(ModifierData *md, ModifierData *target)
|
|||||||
tbmd->operation = bmd->operation;
|
tbmd->operation = bmd->operation;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int isDisabled(ModifierData *md, int useRenderParams)
|
static int isDisabled(ModifierData *md, int UNUSED(useRenderParams))
|
||||||
{
|
{
|
||||||
BooleanModifierData *bmd = (BooleanModifierData*) md;
|
BooleanModifierData *bmd = (BooleanModifierData*) md;
|
||||||
|
|
||||||
@@ -66,9 +67,10 @@ static void foreachObjectLink(
|
|||||||
walk(userData, ob, &bmd->object);
|
walk(userData, ob, &bmd->object);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void updateDepgraph(
|
static void updateDepgraph(ModifierData *md, DagForest *forest,
|
||||||
ModifierData *md, DagForest *forest, struct Scene *scene, Object *ob,
|
struct Scene *UNUSED(scene),
|
||||||
DagNode *obNode)
|
Object *UNUSED(ob),
|
||||||
|
DagNode *obNode)
|
||||||
{
|
{
|
||||||
BooleanModifierData *bmd = (BooleanModifierData*) md;
|
BooleanModifierData *bmd = (BooleanModifierData*) md;
|
||||||
|
|
||||||
@@ -81,9 +83,10 @@ static void updateDepgraph(
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
static DerivedMesh *applyModifier(
|
static DerivedMesh *applyModifier(ModifierData *md, Object *ob,
|
||||||
ModifierData *md, Object *ob, DerivedMesh *derivedData,
|
DerivedMesh *derivedData,
|
||||||
int useRenderParams, int isFinalCalc)
|
int UNUSED(useRenderParams),
|
||||||
|
int UNUSED(isFinalCalc))
|
||||||
{
|
{
|
||||||
BooleanModifierData *bmd = (BooleanModifierData*) md;
|
BooleanModifierData *bmd = (BooleanModifierData*) md;
|
||||||
DerivedMesh *dm = bmd->object->derivedFinal;
|
DerivedMesh *dm = bmd->object->derivedFinal;
|
||||||
@@ -105,7 +108,7 @@ static DerivedMesh *applyModifier(
|
|||||||
return derivedData;
|
return derivedData;
|
||||||
}
|
}
|
||||||
|
|
||||||
static CustomDataMask requiredDataMask(Object *ob, ModifierData *md)
|
static CustomDataMask requiredDataMask(Object *UNUSED(ob), ModifierData *UNUSED(md))
|
||||||
{
|
{
|
||||||
CustomDataMask dataMask = (1 << CD_MTFACE) + (1 << CD_MEDGE);
|
CustomDataMask dataMask = (1 << CD_MTFACE) + (1 << CD_MEDGE);
|
||||||
|
|
||||||
|
|||||||
@@ -65,14 +65,15 @@ static void copyData(ModifierData *md, ModifierData *target)
|
|||||||
tbmd->seed = bmd->seed;
|
tbmd->seed = bmd->seed;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int dependsOnTime(ModifierData *md)
|
static int dependsOnTime(ModifierData *UNUSED(md))
|
||||||
{
|
{
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
static DerivedMesh *applyModifier(ModifierData *md, Object *ob,
|
static DerivedMesh *applyModifier(ModifierData *md, Object *ob,
|
||||||
DerivedMesh *derivedData,
|
DerivedMesh *derivedData,
|
||||||
int useRenderParams, int isFinalCalc)
|
int UNUSED(useRenderParams),
|
||||||
|
int UNUSED(isFinalCalc))
|
||||||
{
|
{
|
||||||
DerivedMesh *dm = derivedData;
|
DerivedMesh *dm = derivedData;
|
||||||
DerivedMesh *result;
|
DerivedMesh *result;
|
||||||
|
|||||||
@@ -35,6 +35,7 @@
|
|||||||
|
|
||||||
#include "BLI_math.h"
|
#include "BLI_math.h"
|
||||||
|
|
||||||
|
#include "BKE_utildefines.h"
|
||||||
#include "BKE_deform.h"
|
#include "BKE_deform.h"
|
||||||
#include "BKE_DerivedMesh.h"
|
#include "BKE_DerivedMesh.h"
|
||||||
#include "BKE_modifier.h"
|
#include "BKE_modifier.h"
|
||||||
@@ -73,7 +74,7 @@ static void copyData(ModifierData *md, ModifierData *target)
|
|||||||
strncpy(tcmd->defgrp_name, cmd->defgrp_name, 32);
|
strncpy(tcmd->defgrp_name, cmd->defgrp_name, 32);
|
||||||
}
|
}
|
||||||
|
|
||||||
static int isDisabled(ModifierData *md, int useRenderParams)
|
static int isDisabled(ModifierData *md, int UNUSED(useRenderParams))
|
||||||
{
|
{
|
||||||
CastModifierData *cmd = (CastModifierData*) md;
|
CastModifierData *cmd = (CastModifierData*) md;
|
||||||
short flag;
|
short flag;
|
||||||
@@ -85,7 +86,7 @@ static int isDisabled(ModifierData *md, int useRenderParams)
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
static CustomDataMask requiredDataMask(Object *ob, ModifierData *md)
|
static CustomDataMask requiredDataMask(Object *UNUSED(ob), ModifierData *md)
|
||||||
{
|
{
|
||||||
CastModifierData *cmd = (CastModifierData *)md;
|
CastModifierData *cmd = (CastModifierData *)md;
|
||||||
CustomDataMask dataMask = 0;
|
CustomDataMask dataMask = 0;
|
||||||
@@ -106,9 +107,10 @@ static void foreachObjectLink(
|
|||||||
walk (userData, ob, &cmd->object);
|
walk (userData, ob, &cmd->object);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void updateDepgraph(
|
static void updateDepgraph(ModifierData *md, DagForest *forest,
|
||||||
ModifierData *md, DagForest *forest, struct Scene *scene, Object *ob,
|
struct Scene *UNUSED(scene),
|
||||||
DagNode *obNode)
|
Object *UNUSED(ob),
|
||||||
|
DagNode *obNode)
|
||||||
{
|
{
|
||||||
CastModifierData *cmd = (CastModifierData*) md;
|
CastModifierData *cmd = (CastModifierData*) md;
|
||||||
|
|
||||||
@@ -566,14 +568,17 @@ static void cuboid_do(
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static void deformVerts(
|
static void deformVerts(ModifierData *md, Object *ob,
|
||||||
ModifierData *md, Object *ob, DerivedMesh *derivedData,
|
DerivedMesh *derivedData,
|
||||||
float (*vertexCos)[3], int numVerts, int useRenderParams, int isFinalCalc)
|
float (*vertexCos)[3],
|
||||||
|
int numVerts,
|
||||||
|
int UNUSED(useRenderParams),
|
||||||
|
int UNUSED(isFinalCalc))
|
||||||
{
|
{
|
||||||
DerivedMesh *dm = NULL;
|
DerivedMesh *dm = NULL;
|
||||||
CastModifierData *cmd = (CastModifierData *)md;
|
CastModifierData *cmd = (CastModifierData *)md;
|
||||||
|
|
||||||
dm = get_dm(md->scene, ob, NULL, derivedData, NULL, 0);
|
dm = get_dm(ob, NULL, derivedData, NULL, 0);
|
||||||
|
|
||||||
if (cmd->type == MOD_CAST_TYPE_CUBOID) {
|
if (cmd->type == MOD_CAST_TYPE_CUBOID) {
|
||||||
cuboid_do(cmd, ob, dm, vertexCos, numVerts);
|
cuboid_do(cmd, ob, dm, vertexCos, numVerts);
|
||||||
@@ -589,7 +594,7 @@ static void deformVertsEM(
|
|||||||
ModifierData *md, Object *ob, struct EditMesh *editData,
|
ModifierData *md, Object *ob, struct EditMesh *editData,
|
||||||
DerivedMesh *derivedData, float (*vertexCos)[3], int numVerts)
|
DerivedMesh *derivedData, float (*vertexCos)[3], int numVerts)
|
||||||
{
|
{
|
||||||
DerivedMesh *dm = get_dm(md->scene, ob, editData, derivedData, NULL, 0);
|
DerivedMesh *dm = get_dm(ob, editData, derivedData, NULL, 0);
|
||||||
CastModifierData *cmd = (CastModifierData *)md;
|
CastModifierData *cmd = (CastModifierData *)md;
|
||||||
|
|
||||||
if (cmd->type == MOD_CAST_TYPE_CUBOID) {
|
if (cmd->type == MOD_CAST_TYPE_CUBOID) {
|
||||||
|
|||||||
@@ -36,6 +36,7 @@
|
|||||||
|
|
||||||
#include "MEM_guardedalloc.h"
|
#include "MEM_guardedalloc.h"
|
||||||
|
|
||||||
|
#include "BKE_utildefines.h"
|
||||||
#include "BKE_cloth.h"
|
#include "BKE_cloth.h"
|
||||||
#include "BKE_cdderivedmesh.h"
|
#include "BKE_cdderivedmesh.h"
|
||||||
#include "BKE_global.h"
|
#include "BKE_global.h"
|
||||||
@@ -111,7 +112,7 @@ static void updateDepgraph(
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static CustomDataMask requiredDataMask(Object *ob, ModifierData *md)
|
static CustomDataMask requiredDataMask(Object *UNUSED(ob), ModifierData *md)
|
||||||
{
|
{
|
||||||
CustomDataMask dataMask = 0;
|
CustomDataMask dataMask = 0;
|
||||||
ClothModifierData *clmd = (ClothModifierData*)md;
|
ClothModifierData *clmd = (ClothModifierData*)md;
|
||||||
@@ -150,7 +151,7 @@ static void copyData(ModifierData *md, ModifierData *target)
|
|||||||
tclmd->clothObject = NULL;
|
tclmd->clothObject = NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int dependsOnTime(ModifierData *md)
|
static int dependsOnTime(ModifierData *UNUSED(md))
|
||||||
{
|
{
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -38,6 +38,7 @@
|
|||||||
|
|
||||||
#include "BLI_math.h"
|
#include "BLI_math.h"
|
||||||
|
|
||||||
|
#include "BKE_utildefines.h"
|
||||||
#include "BKE_collision.h"
|
#include "BKE_collision.h"
|
||||||
#include "BKE_cdderivedmesh.h"
|
#include "BKE_cdderivedmesh.h"
|
||||||
#include "BKE_global.h"
|
#include "BKE_global.h"
|
||||||
@@ -94,14 +95,17 @@ static void freeData(ModifierData *md)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static int dependsOnTime(ModifierData *md)
|
static int dependsOnTime(ModifierData *UNUSED(md))
|
||||||
{
|
{
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void deformVerts(
|
static void deformVerts(ModifierData *md, Object *ob,
|
||||||
ModifierData *md, Object *ob, DerivedMesh *derivedData,
|
DerivedMesh *derivedData,
|
||||||
float (*vertexCos)[3], int numVerts, int useRenderParams, int isFinalCalc)
|
float (*vertexCos)[3],
|
||||||
|
int UNUSED(numVerts),
|
||||||
|
int UNUSED(useRenderParams),
|
||||||
|
int UNUSED(isFinalCalc))
|
||||||
{
|
{
|
||||||
CollisionModifierData *collmd = (CollisionModifierData*) md;
|
CollisionModifierData *collmd = (CollisionModifierData*) md;
|
||||||
DerivedMesh *dm = NULL;
|
DerivedMesh *dm = NULL;
|
||||||
|
|||||||
@@ -35,6 +35,7 @@
|
|||||||
#include "DNA_scene_types.h"
|
#include "DNA_scene_types.h"
|
||||||
#include "DNA_object_types.h"
|
#include "DNA_object_types.h"
|
||||||
|
|
||||||
|
#include "BKE_utildefines.h"
|
||||||
#include "BKE_cdderivedmesh.h"
|
#include "BKE_cdderivedmesh.h"
|
||||||
#include "BKE_lattice.h"
|
#include "BKE_lattice.h"
|
||||||
#include "BKE_modifier.h"
|
#include "BKE_modifier.h"
|
||||||
@@ -59,7 +60,7 @@ static void copyData(ModifierData *md, ModifierData *target)
|
|||||||
strncpy(tcmd->name, cmd->name, 32);
|
strncpy(tcmd->name, cmd->name, 32);
|
||||||
}
|
}
|
||||||
|
|
||||||
static CustomDataMask requiredDataMask(Object *ob, ModifierData *md)
|
static CustomDataMask requiredDataMask(Object *UNUSED(ob), ModifierData *md)
|
||||||
{
|
{
|
||||||
CurveModifierData *cmd = (CurveModifierData *)md;
|
CurveModifierData *cmd = (CurveModifierData *)md;
|
||||||
CustomDataMask dataMask = 0;
|
CustomDataMask dataMask = 0;
|
||||||
@@ -70,7 +71,7 @@ static CustomDataMask requiredDataMask(Object *ob, ModifierData *md)
|
|||||||
return dataMask;
|
return dataMask;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int isDisabled(ModifierData *md, int userRenderParams)
|
static int isDisabled(ModifierData *md, int UNUSED(userRenderParams))
|
||||||
{
|
{
|
||||||
CurveModifierData *cmd = (CurveModifierData*) md;
|
CurveModifierData *cmd = (CurveModifierData*) md;
|
||||||
|
|
||||||
@@ -87,9 +88,10 @@ static void foreachObjectLink(
|
|||||||
walk(userData, ob, &cmd->object);
|
walk(userData, ob, &cmd->object);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void updateDepgraph(
|
static void updateDepgraph(ModifierData *md, DagForest *forest,
|
||||||
ModifierData *md, DagForest *forest, Scene *scene,
|
Scene *UNUSED(scene),
|
||||||
Object *ob, DagNode *obNode)
|
Object *UNUSED(ob),
|
||||||
|
DagNode *obNode)
|
||||||
{
|
{
|
||||||
CurveModifierData *cmd = (CurveModifierData*) md;
|
CurveModifierData *cmd = (CurveModifierData*) md;
|
||||||
|
|
||||||
@@ -101,9 +103,12 @@ static void updateDepgraph(
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static void deformVerts(
|
static void deformVerts(ModifierData *md, Object *ob,
|
||||||
ModifierData *md, Object *ob, DerivedMesh *derivedData,
|
DerivedMesh *derivedData,
|
||||||
float (*vertexCos)[3], int numVerts, int useRenderParams, int isFinalCalc)
|
float (*vertexCos)[3],
|
||||||
|
int numVerts,
|
||||||
|
int UNUSED(useRenderParams),
|
||||||
|
int UNUSED(isFinalCalc))
|
||||||
{
|
{
|
||||||
CurveModifierData *cmd = (CurveModifierData*) md;
|
CurveModifierData *cmd = (CurveModifierData*) md;
|
||||||
|
|
||||||
|
|||||||
@@ -34,6 +34,7 @@
|
|||||||
|
|
||||||
#include "BLI_math.h"
|
#include "BLI_math.h"
|
||||||
|
|
||||||
|
#include "BKE_utildefines.h"
|
||||||
#include "BKE_cdderivedmesh.h"
|
#include "BKE_cdderivedmesh.h"
|
||||||
#include "BKE_mesh.h"
|
#include "BKE_mesh.h"
|
||||||
#include "BKE_modifier.h"
|
#include "BKE_modifier.h"
|
||||||
@@ -59,9 +60,10 @@ static void copyData(ModifierData *md, ModifierData *target)
|
|||||||
tdmd->percent = dmd->percent;
|
tdmd->percent = dmd->percent;
|
||||||
}
|
}
|
||||||
|
|
||||||
static DerivedMesh *applyModifier(
|
static DerivedMesh *applyModifier(ModifierData *md, Object *UNUSED(ob),
|
||||||
ModifierData *md, Object *ob, DerivedMesh *derivedData,
|
DerivedMesh *derivedData,
|
||||||
int useRenderParams, int isFinalCalc)
|
int UNUSED(useRenderParams),
|
||||||
|
int UNUSED(isFinalCalc))
|
||||||
{
|
{
|
||||||
DecimateModifierData *dmd = (DecimateModifierData*) md;
|
DecimateModifierData *dmd = (DecimateModifierData*) md;
|
||||||
DerivedMesh *dm = derivedData, *result = NULL;
|
DerivedMesh *dm = derivedData, *result = NULL;
|
||||||
|
|||||||
@@ -35,6 +35,7 @@
|
|||||||
|
|
||||||
#include "BLI_math.h"
|
#include "BLI_math.h"
|
||||||
|
|
||||||
|
#include "BKE_utildefines.h"
|
||||||
#include "BKE_cdderivedmesh.h"
|
#include "BKE_cdderivedmesh.h"
|
||||||
#include "BKE_modifier.h"
|
#include "BKE_modifier.h"
|
||||||
#include "BKE_texture.h"
|
#include "BKE_texture.h"
|
||||||
@@ -75,7 +76,7 @@ static void copyData(ModifierData *md, ModifierData *target)
|
|||||||
strncpy(tdmd->uvlayer_name, dmd->uvlayer_name, 32);
|
strncpy(tdmd->uvlayer_name, dmd->uvlayer_name, 32);
|
||||||
}
|
}
|
||||||
|
|
||||||
static CustomDataMask requiredDataMask(Object *ob, ModifierData *md)
|
static CustomDataMask requiredDataMask(Object *UNUSED(ob), ModifierData *md)
|
||||||
{
|
{
|
||||||
DisplaceModifierData *dmd = (DisplaceModifierData *)md;
|
DisplaceModifierData *dmd = (DisplaceModifierData *)md;
|
||||||
CustomDataMask dataMask = 0;
|
CustomDataMask dataMask = 0;
|
||||||
@@ -127,16 +128,17 @@ static void foreachIDLink(ModifierData *md, Object *ob,
|
|||||||
foreachObjectLink(md, ob, (ObjectWalkFunc)walk, userData);
|
foreachObjectLink(md, ob, (ObjectWalkFunc)walk, userData);
|
||||||
}
|
}
|
||||||
|
|
||||||
static int isDisabled(ModifierData *md, int useRenderParams)
|
static int isDisabled(ModifierData *md, int UNUSED(useRenderParams))
|
||||||
{
|
{
|
||||||
DisplaceModifierData *dmd = (DisplaceModifierData*) md;
|
DisplaceModifierData *dmd = (DisplaceModifierData*) md;
|
||||||
|
|
||||||
return (!dmd->texture || dmd->strength == 0.0f);
|
return (!dmd->texture || dmd->strength == 0.0f);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void updateDepgraph(
|
static void updateDepgraph(ModifierData *md, DagForest *forest,
|
||||||
ModifierData *md, DagForest *forest, struct Scene *scene,
|
struct Scene *UNUSED(scene),
|
||||||
Object *ob, DagNode *obNode)
|
Object *UNUSED(ob),
|
||||||
|
DagNode *obNode)
|
||||||
{
|
{
|
||||||
DisplaceModifierData *dmd = (DisplaceModifierData*) md;
|
DisplaceModifierData *dmd = (DisplaceModifierData*) md;
|
||||||
|
|
||||||
@@ -308,11 +310,14 @@ static void displaceModifier_do(
|
|||||||
MEM_freeN(tex_co);
|
MEM_freeN(tex_co);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void deformVerts(
|
static void deformVerts(ModifierData *md, Object *ob,
|
||||||
ModifierData *md, Object *ob, DerivedMesh *derivedData,
|
DerivedMesh *derivedData,
|
||||||
float (*vertexCos)[3], int numVerts, int useRenderParams, int isFinalCalc)
|
float (*vertexCos)[3],
|
||||||
|
int numVerts,
|
||||||
|
int UNUSED(useRenderParams),
|
||||||
|
int UNUSED(isFinalCalc))
|
||||||
{
|
{
|
||||||
DerivedMesh *dm= get_cddm(md->scene, ob, NULL, derivedData, vertexCos);
|
DerivedMesh *dm= get_cddm(ob, NULL, derivedData, vertexCos);
|
||||||
|
|
||||||
displaceModifier_do((DisplaceModifierData *)md, ob, dm,
|
displaceModifier_do((DisplaceModifierData *)md, ob, dm,
|
||||||
vertexCos, numVerts);
|
vertexCos, numVerts);
|
||||||
@@ -325,7 +330,7 @@ static void deformVertsEM(
|
|||||||
ModifierData *md, Object *ob, struct EditMesh *editData,
|
ModifierData *md, Object *ob, struct EditMesh *editData,
|
||||||
DerivedMesh *derivedData, float (*vertexCos)[3], int numVerts)
|
DerivedMesh *derivedData, float (*vertexCos)[3], int numVerts)
|
||||||
{
|
{
|
||||||
DerivedMesh *dm= get_cddm(md->scene, ob, editData, derivedData, vertexCos);
|
DerivedMesh *dm= get_cddm(ob, editData, derivedData, vertexCos);
|
||||||
|
|
||||||
displaceModifier_do((DisplaceModifierData *)md, ob, dm,
|
displaceModifier_do((DisplaceModifierData *)md, ob, dm,
|
||||||
vertexCos, numVerts);
|
vertexCos, numVerts);
|
||||||
|
|||||||
@@ -40,6 +40,7 @@
|
|||||||
#include "BLI_edgehash.h"
|
#include "BLI_edgehash.h"
|
||||||
#include "BLI_math.h"
|
#include "BLI_math.h"
|
||||||
|
|
||||||
|
#include "BKE_utildefines.h"
|
||||||
#include "BKE_cdderivedmesh.h"
|
#include "BKE_cdderivedmesh.h"
|
||||||
#include "BKE_modifier.h"
|
#include "BKE_modifier.h"
|
||||||
#include "BKE_particle.h"
|
#include "BKE_particle.h"
|
||||||
@@ -730,8 +731,7 @@ static int edge_is_loose(SmoothEdge *edge)
|
|||||||
return !(edge->faces && edge->faces->next);
|
return !(edge->faces && edge->faces->next);
|
||||||
}
|
}
|
||||||
|
|
||||||
static int edge_is_sharp(SmoothEdge *edge, int flags,
|
static int edge_is_sharp(SmoothEdge *edge)
|
||||||
float threshold)
|
|
||||||
{
|
{
|
||||||
#ifdef EDGESPLIT_DEBUG_1
|
#ifdef EDGESPLIT_DEBUG_1
|
||||||
printf("edge %d: ", edge->newIndex);
|
printf("edge %d: ", edge->newIndex);
|
||||||
@@ -761,8 +761,7 @@ static int edge_is_sharp(SmoothEdge *edge, int flags,
|
|||||||
* - hits a sharp edge (the edge is returned)
|
* - hits a sharp edge (the edge is returned)
|
||||||
* - returns to the start edge (NULL is returned)
|
* - returns to the start edge (NULL is returned)
|
||||||
*/
|
*/
|
||||||
static SmoothEdge *find_other_sharp_edge(SmoothVert *vert, SmoothEdge *edge,
|
static SmoothEdge *find_other_sharp_edge(SmoothVert *vert, SmoothEdge *edge, LinkNode **visited_faces)
|
||||||
LinkNode **visited_faces, float threshold, int flags)
|
|
||||||
{
|
{
|
||||||
SmoothFace *face = NULL;
|
SmoothFace *face = NULL;
|
||||||
SmoothEdge *edge2 = NULL;
|
SmoothEdge *edge2 = NULL;
|
||||||
@@ -790,7 +789,7 @@ static SmoothEdge *find_other_sharp_edge(SmoothVert *vert, SmoothEdge *edge,
|
|||||||
/* search until we hit a loose edge or a sharp edge or an edge we've
|
/* search until we hit a loose edge or a sharp edge or an edge we've
|
||||||
* seen before
|
* seen before
|
||||||
*/
|
*/
|
||||||
while(face && !edge_is_sharp(edge2, flags, threshold)
|
while(face && !edge_is_sharp(edge2)
|
||||||
&& !linklist_contains(visited_edges, edge2)) {
|
&& !linklist_contains(visited_edges, edge2)) {
|
||||||
#ifdef EDGESPLIT_DEBUG_3
|
#ifdef EDGESPLIT_DEBUG_3
|
||||||
printf("current face %4d; current edge %4d\n", face->newIndex,
|
printf("current face %4d; current edge %4d\n", face->newIndex,
|
||||||
@@ -902,8 +901,7 @@ static void propagate_split(SmoothEdge *edge, SmoothVert *vert,
|
|||||||
edge->newIndex, vert->newIndex);
|
edge->newIndex, vert->newIndex);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
edge2 = find_other_sharp_edge(vert, edge, &visited_faces,
|
edge2 = find_other_sharp_edge(vert, edge, &visited_faces);
|
||||||
mesh->threshold, mesh->flags);
|
|
||||||
|
|
||||||
if(!edge2) {
|
if(!edge2) {
|
||||||
/* didn't find a sharp or loose edge, so we've hit a dead end */
|
/* didn't find a sharp or loose edge, so we've hit a dead end */
|
||||||
@@ -912,7 +910,7 @@ static void propagate_split(SmoothEdge *edge, SmoothVert *vert,
|
|||||||
if(edge_is_loose(edge)) {
|
if(edge_is_loose(edge)) {
|
||||||
/* edge is loose, so we can split edge2 at this vert */
|
/* edge is loose, so we can split edge2 at this vert */
|
||||||
split_edge(edge2, vert, mesh);
|
split_edge(edge2, vert, mesh);
|
||||||
} else if(edge_is_sharp(edge, mesh->flags, mesh->threshold)) {
|
} else if(edge_is_sharp(edge)) {
|
||||||
/* both edges are sharp, so we can split the pair at vert */
|
/* both edges are sharp, so we can split the pair at vert */
|
||||||
split_edge(edge, vert, mesh);
|
split_edge(edge, vert, mesh);
|
||||||
} else {
|
} else {
|
||||||
@@ -961,8 +959,7 @@ static void split_edge(SmoothEdge *edge, SmoothVert *vert, SmoothMesh *mesh)
|
|||||||
edge->newIndex, vert->newIndex);
|
edge->newIndex, vert->newIndex);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
edge2 = find_other_sharp_edge(vert, edge, &visited_faces,
|
edge2 = find_other_sharp_edge(vert, edge, &visited_faces);
|
||||||
mesh->threshold, mesh->flags);
|
|
||||||
|
|
||||||
if(!edge2) {
|
if(!edge2) {
|
||||||
/* didn't find a sharp or loose edge, so try the other vert */
|
/* didn't find a sharp or loose edge, so try the other vert */
|
||||||
@@ -1111,7 +1108,7 @@ static void split_sharp_edges(SmoothMesh *mesh, float split_angle, int flags)
|
|||||||
for(i = 0; i < mesh->num_edges; i++) {
|
for(i = 0; i < mesh->num_edges; i++) {
|
||||||
SmoothEdge *edge = &mesh->edges[i];
|
SmoothEdge *edge = &mesh->edges[i];
|
||||||
|
|
||||||
if(edge_is_sharp(edge, flags, mesh->threshold)) {
|
if(edge_is_sharp(edge)) {
|
||||||
split_edge(edge, edge->verts[0], mesh);
|
split_edge(edge, edge->verts[0], mesh);
|
||||||
|
|
||||||
do {
|
do {
|
||||||
@@ -1190,8 +1187,7 @@ static void split_bridge_verts(SmoothMesh *mesh)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static DerivedMesh *edgesplitModifier_do(EdgeSplitModifierData *emd,
|
static DerivedMesh *edgesplitModifier_do(EdgeSplitModifierData *emd, DerivedMesh *dm)
|
||||||
Object *ob, DerivedMesh *dm)
|
|
||||||
{
|
{
|
||||||
SmoothMesh *mesh;
|
SmoothMesh *mesh;
|
||||||
DerivedMesh *result;
|
DerivedMesh *result;
|
||||||
@@ -1244,14 +1240,15 @@ static DerivedMesh *edgesplitModifier_do(EdgeSplitModifierData *emd,
|
|||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
static DerivedMesh *applyModifier(
|
static DerivedMesh *applyModifier(ModifierData *md, Object *UNUSED(ob),
|
||||||
ModifierData *md, Object *ob, DerivedMesh *derivedData,
|
DerivedMesh *derivedData,
|
||||||
int useRenderParams, int isFinalCalc)
|
int UNUSED(useRenderParams),
|
||||||
|
int UNUSED(isFinalCalc))
|
||||||
{
|
{
|
||||||
DerivedMesh *result;
|
DerivedMesh *result;
|
||||||
EdgeSplitModifierData *emd = (EdgeSplitModifierData*) md;
|
EdgeSplitModifierData *emd = (EdgeSplitModifierData*) md;
|
||||||
|
|
||||||
result = edgesplitModifier_do(emd, ob, derivedData);
|
result = edgesplitModifier_do(emd, derivedData);
|
||||||
|
|
||||||
if(result != derivedData)
|
if(result != derivedData)
|
||||||
CDDM_calc_normals(result);
|
CDDM_calc_normals(result);
|
||||||
@@ -1259,9 +1256,9 @@ static DerivedMesh *applyModifier(
|
|||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
static DerivedMesh *applyModifierEM(
|
static DerivedMesh *applyModifierEM(ModifierData *md, Object *ob,
|
||||||
ModifierData *md, Object *ob, struct EditMesh *editData,
|
struct EditMesh *UNUSED(editData),
|
||||||
DerivedMesh *derivedData)
|
DerivedMesh *derivedData)
|
||||||
{
|
{
|
||||||
return applyModifier(md, ob, derivedData, 0, 1);
|
return applyModifier(md, ob, derivedData, 0, 1);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -74,11 +74,11 @@ static void copyData(ModifierData *md, ModifierData *target)
|
|||||||
temd->protect = emd->protect;
|
temd->protect = emd->protect;
|
||||||
temd->vgroup = emd->vgroup;
|
temd->vgroup = emd->vgroup;
|
||||||
}
|
}
|
||||||
static int dependsOnTime(ModifierData *md)
|
static int dependsOnTime(ModifierData *UNUSED(md))
|
||||||
{
|
{
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
static CustomDataMask requiredDataMask(Object *ob, ModifierData *md)
|
static CustomDataMask requiredDataMask(Object *UNUSED(ob), ModifierData *md)
|
||||||
{
|
{
|
||||||
ExplodeModifierData *emd= (ExplodeModifierData*) md;
|
ExplodeModifierData *emd= (ExplodeModifierData*) md;
|
||||||
CustomDataMask dataMask = 0;
|
CustomDataMask dataMask = 0;
|
||||||
@@ -90,8 +90,8 @@ static CustomDataMask requiredDataMask(Object *ob, ModifierData *md)
|
|||||||
}
|
}
|
||||||
|
|
||||||
static void createFacepa(ExplodeModifierData *emd,
|
static void createFacepa(ExplodeModifierData *emd,
|
||||||
ParticleSystemModifierData *psmd,
|
ParticleSystemModifierData *psmd,
|
||||||
Object *ob, DerivedMesh *dm)
|
DerivedMesh *dm)
|
||||||
{
|
{
|
||||||
ParticleSystem *psys=psmd->psys;
|
ParticleSystem *psys=psmd->psys;
|
||||||
MFace *fa=0, *mface=0;
|
MFace *fa=0, *mface=0;
|
||||||
@@ -833,9 +833,10 @@ static ParticleSystemModifierData * findPrecedingParticlesystem(Object *ob, Modi
|
|||||||
}
|
}
|
||||||
return psmd;
|
return psmd;
|
||||||
}
|
}
|
||||||
static DerivedMesh * applyModifier(
|
static DerivedMesh * applyModifier(ModifierData *md, Object *ob,
|
||||||
ModifierData *md, Object *ob, DerivedMesh *derivedData,
|
DerivedMesh *derivedData,
|
||||||
int useRenderParams, int isFinalCalc)
|
int UNUSED(useRenderParams),
|
||||||
|
int UNUSED(isFinalCalc))
|
||||||
{
|
{
|
||||||
DerivedMesh *dm = derivedData;
|
DerivedMesh *dm = derivedData;
|
||||||
ExplodeModifierData *emd= (ExplodeModifierData*) md;
|
ExplodeModifierData *emd= (ExplodeModifierData*) md;
|
||||||
@@ -852,16 +853,16 @@ static DerivedMesh * applyModifier(
|
|||||||
if(emd->facepa==0
|
if(emd->facepa==0
|
||||||
|| psmd->flag&eParticleSystemFlag_Pars
|
|| psmd->flag&eParticleSystemFlag_Pars
|
||||||
|| emd->flag&eExplodeFlag_CalcFaces
|
|| emd->flag&eExplodeFlag_CalcFaces
|
||||||
|| MEM_allocN_len(emd->facepa)/sizeof(int) != dm->getNumFaces(dm)){
|
|| MEM_allocN_len(emd->facepa)/sizeof(int) != dm->getNumFaces(dm))
|
||||||
|
{
|
||||||
if(psmd->flag & eParticleSystemFlag_Pars)
|
if(psmd->flag & eParticleSystemFlag_Pars)
|
||||||
psmd->flag &= ~eParticleSystemFlag_Pars;
|
psmd->flag &= ~eParticleSystemFlag_Pars;
|
||||||
|
|
||||||
if(emd->flag & eExplodeFlag_CalcFaces)
|
if(emd->flag & eExplodeFlag_CalcFaces)
|
||||||
emd->flag &= ~eExplodeFlag_CalcFaces;
|
emd->flag &= ~eExplodeFlag_CalcFaces;
|
||||||
|
|
||||||
createFacepa(emd,psmd,ob,derivedData);
|
createFacepa(emd,psmd,derivedData);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* 2. create new mesh */
|
/* 2. create new mesh */
|
||||||
if(emd->flag & eExplodeFlag_EdgeSplit){
|
if(emd->flag & eExplodeFlag_EdgeSplit){
|
||||||
int *facepa = emd->facepa;
|
int *facepa = emd->facepa;
|
||||||
|
|||||||
@@ -34,6 +34,7 @@
|
|||||||
#include "DNA_object_fluidsim.h"
|
#include "DNA_object_fluidsim.h"
|
||||||
#include "DNA_object_types.h"
|
#include "DNA_object_types.h"
|
||||||
|
|
||||||
|
#include "BKE_utildefines.h"
|
||||||
#include "BKE_cdderivedmesh.h"
|
#include "BKE_cdderivedmesh.h"
|
||||||
#include "BKE_modifier.h"
|
#include "BKE_modifier.h"
|
||||||
|
|
||||||
@@ -125,7 +126,7 @@ static void updateDepgraph(
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static int dependsOnTime(ModifierData *md)
|
static int dependsOnTime(ModifierData *UNUSED(md))
|
||||||
{
|
{
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -443,7 +443,7 @@ void fluidsim_read_vel_cache(FluidsimModifierData *fluidmd, DerivedMesh *dm, cha
|
|||||||
gzclose(gzf);
|
gzclose(gzf);
|
||||||
}
|
}
|
||||||
|
|
||||||
DerivedMesh *fluidsim_read_cache(Object *ob, DerivedMesh *orgdm, FluidsimModifierData *fluidmd, int framenr, int useRenderParams)
|
DerivedMesh *fluidsim_read_cache(DerivedMesh *orgdm, FluidsimModifierData *fluidmd, int framenr, int useRenderParams)
|
||||||
{
|
{
|
||||||
int displaymode = 0;
|
int displaymode = 0;
|
||||||
int curFrame = framenr - 1 /*scene->r.sfra*/; /* start with 0 at start frame */
|
int curFrame = framenr - 1 /*scene->r.sfra*/; /* start with 0 at start frame */
|
||||||
@@ -537,7 +537,11 @@ DerivedMesh *fluidsim_read_cache(Object *ob, DerivedMesh *orgdm, FluidsimModifie
|
|||||||
|
|
||||||
#endif // DISABLE_ELBEEM
|
#endif // DISABLE_ELBEEM
|
||||||
|
|
||||||
DerivedMesh *fluidsimModifier_do(FluidsimModifierData *fluidmd, Scene *scene, Object *ob, DerivedMesh *dm, int useRenderParams, int isFinalCalc)
|
DerivedMesh *fluidsimModifier_do(FluidsimModifierData *fluidmd, Scene *scene,
|
||||||
|
Object *UNUSED(ob),
|
||||||
|
DerivedMesh *dm,
|
||||||
|
int useRenderParams,
|
||||||
|
int UNUSED(isFinalCalc))
|
||||||
{
|
{
|
||||||
#ifndef DISABLE_ELBEEM
|
#ifndef DISABLE_ELBEEM
|
||||||
DerivedMesh *result = NULL;
|
DerivedMesh *result = NULL;
|
||||||
@@ -567,7 +571,7 @@ DerivedMesh *fluidsimModifier_do(FluidsimModifierData *fluidmd, Scene *scene, Ob
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* try to read from cache */
|
/* try to read from cache */
|
||||||
if(((fss->lastgoodframe >= framenr) || (fss->lastgoodframe < 0)) && (result = fluidsim_read_cache(ob, dm, fluidmd, framenr, useRenderParams)))
|
if(((fss->lastgoodframe >= framenr) || (fss->lastgoodframe < 0)) && (result = fluidsim_read_cache(dm, fluidmd, framenr, useRenderParams)))
|
||||||
{
|
{
|
||||||
// fss->lastgoodframe = framenr; // set also in src/fluidsim.c
|
// fss->lastgoodframe = framenr; // set also in src/fluidsim.c
|
||||||
return result;
|
return result;
|
||||||
@@ -577,7 +581,7 @@ DerivedMesh *fluidsimModifier_do(FluidsimModifierData *fluidmd, Scene *scene, Ob
|
|||||||
// display last known good frame
|
// display last known good frame
|
||||||
if(fss->lastgoodframe >= 0)
|
if(fss->lastgoodframe >= 0)
|
||||||
{
|
{
|
||||||
if((result = fluidsim_read_cache(ob, dm, fluidmd, fss->lastgoodframe, useRenderParams)))
|
if((result = fluidsim_read_cache(dm, fluidmd, fss->lastgoodframe, useRenderParams)))
|
||||||
{
|
{
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
@@ -587,7 +591,7 @@ DerivedMesh *fluidsimModifier_do(FluidsimModifierData *fluidmd, Scene *scene, Ob
|
|||||||
|
|
||||||
|
|
||||||
// this could be likely the case when you load an old fluidsim
|
// this could be likely the case when you load an old fluidsim
|
||||||
if((result = fluidsim_read_cache(ob, dm, fluidmd, fss->lastgoodframe, useRenderParams)))
|
if((result = fluidsim_read_cache(dm, fluidmd, fss->lastgoodframe, useRenderParams)))
|
||||||
{
|
{
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -40,6 +40,7 @@
|
|||||||
#include "BKE_cdderivedmesh.h"
|
#include "BKE_cdderivedmesh.h"
|
||||||
#include "BKE_modifier.h"
|
#include "BKE_modifier.h"
|
||||||
#include "BKE_deform.h"
|
#include "BKE_deform.h"
|
||||||
|
#include "BKE_utildefines.h"
|
||||||
|
|
||||||
#include "depsgraph_private.h"
|
#include "depsgraph_private.h"
|
||||||
#include "MEM_guardedalloc.h"
|
#include "MEM_guardedalloc.h"
|
||||||
@@ -68,7 +69,7 @@ static void copyData(ModifierData *md, ModifierData *target)
|
|||||||
strncpy(thmd->subtarget, hmd->subtarget, 32);
|
strncpy(thmd->subtarget, hmd->subtarget, 32);
|
||||||
}
|
}
|
||||||
|
|
||||||
static CustomDataMask requiredDataMask(Object *ob, ModifierData *md)
|
static CustomDataMask requiredDataMask(Object *UNUSED(ob), ModifierData *md)
|
||||||
{
|
{
|
||||||
HookModifierData *hmd = (HookModifierData *)md;
|
HookModifierData *hmd = (HookModifierData *)md;
|
||||||
CustomDataMask dataMask = 0;
|
CustomDataMask dataMask = 0;
|
||||||
@@ -86,7 +87,7 @@ static void freeData(ModifierData *md)
|
|||||||
if (hmd->indexar) MEM_freeN(hmd->indexar);
|
if (hmd->indexar) MEM_freeN(hmd->indexar);
|
||||||
}
|
}
|
||||||
|
|
||||||
static int isDisabled(ModifierData *md, int useRenderParams)
|
static int isDisabled(ModifierData *md, int UNUSED(useRenderParams))
|
||||||
{
|
{
|
||||||
HookModifierData *hmd = (HookModifierData*) md;
|
HookModifierData *hmd = (HookModifierData*) md;
|
||||||
|
|
||||||
@@ -103,8 +104,10 @@ static void foreachObjectLink(
|
|||||||
walk(userData, ob, &hmd->object);
|
walk(userData, ob, &hmd->object);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void updateDepgraph(ModifierData *md, DagForest *forest, struct Scene *scene,
|
static void updateDepgraph(ModifierData *md, DagForest *forest,
|
||||||
Object *ob, DagNode *obNode)
|
struct Scene *UNUSED(scene),
|
||||||
|
Object *UNUSED(ob),
|
||||||
|
DagNode *obNode)
|
||||||
{
|
{
|
||||||
HookModifierData *hmd = (HookModifierData*) md;
|
HookModifierData *hmd = (HookModifierData*) md;
|
||||||
|
|
||||||
@@ -118,9 +121,12 @@ static void updateDepgraph(ModifierData *md, DagForest *forest, struct Scene *sc
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static void deformVerts(
|
static void deformVerts(ModifierData *md, Object *ob,
|
||||||
ModifierData *md, Object *ob, DerivedMesh *derivedData,
|
DerivedMesh *derivedData,
|
||||||
float (*vertexCos)[3], int numVerts, int useRenderParams, int isFinalCalc)
|
float (*vertexCos)[3],
|
||||||
|
int numVerts,
|
||||||
|
int UNUSED(useRenderParams),
|
||||||
|
int UNUSED(isFinalCalc))
|
||||||
{
|
{
|
||||||
HookModifierData *hmd = (HookModifierData*) md;
|
HookModifierData *hmd = (HookModifierData*) md;
|
||||||
bPoseChannel *pchan= get_pose_channel(hmd->object->pose, hmd->subtarget);
|
bPoseChannel *pchan= get_pose_channel(hmd->object->pose, hmd->subtarget);
|
||||||
|
|||||||
@@ -34,6 +34,7 @@
|
|||||||
|
|
||||||
#include "DNA_object_types.h"
|
#include "DNA_object_types.h"
|
||||||
|
|
||||||
|
#include "BKE_utildefines.h"
|
||||||
#include "BKE_cdderivedmesh.h"
|
#include "BKE_cdderivedmesh.h"
|
||||||
#include "BKE_lattice.h"
|
#include "BKE_lattice.h"
|
||||||
#include "BKE_modifier.h"
|
#include "BKE_modifier.h"
|
||||||
@@ -52,7 +53,7 @@ static void copyData(ModifierData *md, ModifierData *target)
|
|||||||
strncpy(tlmd->name, lmd->name, 32);
|
strncpy(tlmd->name, lmd->name, 32);
|
||||||
}
|
}
|
||||||
|
|
||||||
static CustomDataMask requiredDataMask(Object *ob, ModifierData *md)
|
static CustomDataMask requiredDataMask(Object *UNUSED(ob), ModifierData *md)
|
||||||
{
|
{
|
||||||
LatticeModifierData *lmd = (LatticeModifierData *)md;
|
LatticeModifierData *lmd = (LatticeModifierData *)md;
|
||||||
CustomDataMask dataMask = 0;
|
CustomDataMask dataMask = 0;
|
||||||
@@ -63,7 +64,7 @@ static CustomDataMask requiredDataMask(Object *ob, ModifierData *md)
|
|||||||
return dataMask;
|
return dataMask;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int isDisabled(ModifierData *md, int userRenderParams)
|
static int isDisabled(ModifierData *md, int UNUSED(userRenderParams))
|
||||||
{
|
{
|
||||||
LatticeModifierData *lmd = (LatticeModifierData*) md;
|
LatticeModifierData *lmd = (LatticeModifierData*) md;
|
||||||
|
|
||||||
@@ -80,8 +81,10 @@ static void foreachObjectLink(
|
|||||||
walk(userData, ob, &lmd->object);
|
walk(userData, ob, &lmd->object);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void updateDepgraph(ModifierData *md, DagForest *forest, struct Scene *scene,
|
static void updateDepgraph(ModifierData *md, DagForest *forest,
|
||||||
Object *ob, DagNode *obNode)
|
struct Scene *UNUSED(scene),
|
||||||
|
Object *UNUSED(ob),
|
||||||
|
DagNode *obNode)
|
||||||
{
|
{
|
||||||
LatticeModifierData *lmd = (LatticeModifierData*) md;
|
LatticeModifierData *lmd = (LatticeModifierData*) md;
|
||||||
|
|
||||||
@@ -93,9 +96,12 @@ static void updateDepgraph(ModifierData *md, DagForest *forest, struct Scene *sc
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static void deformVerts(
|
static void deformVerts(ModifierData *md, Object *ob,
|
||||||
ModifierData *md, Object *ob, DerivedMesh *derivedData,
|
DerivedMesh *derivedData,
|
||||||
float (*vertexCos)[3], int numVerts, int useRenderParams, int isFinalCalc)
|
float (*vertexCos)[3],
|
||||||
|
int numVerts,
|
||||||
|
int UNUSED(useRenderParams),
|
||||||
|
int UNUSED(isFinalCalc))
|
||||||
{
|
{
|
||||||
LatticeModifierData *lmd = (LatticeModifierData*) md;
|
LatticeModifierData *lmd = (LatticeModifierData*) md;
|
||||||
|
|
||||||
|
|||||||
@@ -55,7 +55,7 @@ static void copyData(ModifierData *md, ModifierData *target)
|
|||||||
strcpy(tmmd->vgroup, mmd->vgroup);
|
strcpy(tmmd->vgroup, mmd->vgroup);
|
||||||
}
|
}
|
||||||
|
|
||||||
static CustomDataMask requiredDataMask(Object *ob, ModifierData *md)
|
static CustomDataMask requiredDataMask(Object *UNUSED(ob), ModifierData *UNUSED(md))
|
||||||
{
|
{
|
||||||
return (1 << CD_MDEFORMVERT);
|
return (1 << CD_MDEFORMVERT);
|
||||||
}
|
}
|
||||||
@@ -69,8 +69,10 @@ static void foreachObjectLink(
|
|||||||
walk(userData, ob, &mmd->ob_arm);
|
walk(userData, ob, &mmd->ob_arm);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void updateDepgraph(ModifierData *md, DagForest *forest, struct Scene *scene,
|
static void updateDepgraph(ModifierData *md, DagForest *forest,
|
||||||
Object *ob, DagNode *obNode)
|
struct Scene *UNUSED(scene),
|
||||||
|
Object *UNUSED(ob),
|
||||||
|
DagNode *obNode)
|
||||||
{
|
{
|
||||||
MaskModifierData *mmd = (MaskModifierData *)md;
|
MaskModifierData *mmd = (MaskModifierData *)md;
|
||||||
|
|
||||||
@@ -84,8 +86,9 @@ static void updateDepgraph(ModifierData *md, DagForest *forest, struct Scene *sc
|
|||||||
}
|
}
|
||||||
|
|
||||||
static DerivedMesh *applyModifier(ModifierData *md, Object *ob,
|
static DerivedMesh *applyModifier(ModifierData *md, Object *ob,
|
||||||
DerivedMesh *derivedData,
|
DerivedMesh *derivedData,
|
||||||
int useRenderParams, int isFinalCalc)
|
int UNUSED(useRenderParams),
|
||||||
|
int UNUSED(isFinalCalc))
|
||||||
{
|
{
|
||||||
MaskModifierData *mmd= (MaskModifierData *)md;
|
MaskModifierData *mmd= (MaskModifierData *)md;
|
||||||
DerivedMesh *dm= derivedData, *result= NULL;
|
DerivedMesh *dm= derivedData, *result= NULL;
|
||||||
|
|||||||
@@ -35,6 +35,7 @@
|
|||||||
|
|
||||||
#include "BLI_math.h"
|
#include "BLI_math.h"
|
||||||
|
|
||||||
|
#include "BKE_utildefines.h"
|
||||||
#include "BKE_cdderivedmesh.h"
|
#include "BKE_cdderivedmesh.h"
|
||||||
#include "BKE_global.h"
|
#include "BKE_global.h"
|
||||||
#include "BKE_mesh.h"
|
#include "BKE_mesh.h"
|
||||||
@@ -76,7 +77,7 @@ static void copyData(ModifierData *md, ModifierData *target)
|
|||||||
tmmd->object = mmd->object;
|
tmmd->object = mmd->object;
|
||||||
}
|
}
|
||||||
|
|
||||||
static CustomDataMask requiredDataMask(Object *ob, ModifierData *md)
|
static CustomDataMask requiredDataMask(Object *UNUSED(ob), ModifierData *md)
|
||||||
{
|
{
|
||||||
MeshDeformModifierData *mmd = (MeshDeformModifierData *)md;
|
MeshDeformModifierData *mmd = (MeshDeformModifierData *)md;
|
||||||
CustomDataMask dataMask = 0;
|
CustomDataMask dataMask = 0;
|
||||||
@@ -87,7 +88,7 @@ static CustomDataMask requiredDataMask(Object *ob, ModifierData *md)
|
|||||||
return dataMask;
|
return dataMask;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int isDisabled(ModifierData *md, int useRenderParams)
|
static int isDisabled(ModifierData *md, int UNUSED(useRenderParams))
|
||||||
{
|
{
|
||||||
MeshDeformModifierData *mmd = (MeshDeformModifierData*) md;
|
MeshDeformModifierData *mmd = (MeshDeformModifierData*) md;
|
||||||
|
|
||||||
@@ -104,9 +105,10 @@ static void foreachObjectLink(
|
|||||||
walk(userData, ob, &mmd->object);
|
walk(userData, ob, &mmd->object);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void updateDepgraph(
|
static void updateDepgraph(ModifierData *md, DagForest *forest,
|
||||||
ModifierData *md, DagForest *forest, struct Scene *scene, Object *ob,
|
struct Scene *UNUSED(scene),
|
||||||
DagNode *obNode)
|
Object *UNUSED(ob),
|
||||||
|
DagNode *obNode)
|
||||||
{
|
{
|
||||||
MeshDeformModifierData *mmd = (MeshDeformModifierData*) md;
|
MeshDeformModifierData *mmd = (MeshDeformModifierData*) md;
|
||||||
|
|
||||||
@@ -204,7 +206,7 @@ static void meshdeformModifier_do(
|
|||||||
/* if we don't have one computed, use derivedmesh from data
|
/* if we don't have one computed, use derivedmesh from data
|
||||||
* without any modifiers */
|
* without any modifiers */
|
||||||
if(!cagedm) {
|
if(!cagedm) {
|
||||||
cagedm= get_dm(md->scene, mmd->object, NULL, NULL, NULL, 0);
|
cagedm= get_dm(mmd->object, NULL, NULL, NULL, 0);
|
||||||
if(cagedm)
|
if(cagedm)
|
||||||
cagedm->needsFree= 1;
|
cagedm->needsFree= 1;
|
||||||
}
|
}
|
||||||
@@ -338,11 +340,14 @@ static void meshdeformModifier_do(
|
|||||||
cagedm->release(cagedm);
|
cagedm->release(cagedm);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void deformVerts(
|
static void deformVerts(ModifierData *md, Object *ob,
|
||||||
ModifierData *md, Object *ob, DerivedMesh *derivedData,
|
DerivedMesh *derivedData,
|
||||||
float (*vertexCos)[3], int numVerts, int useRenderParams, int isFinalCalc)
|
float (*vertexCos)[3],
|
||||||
|
int numVerts,
|
||||||
|
int UNUSED(useRenderParams),
|
||||||
|
int UNUSED(isFinalCalc))
|
||||||
{
|
{
|
||||||
DerivedMesh *dm= get_dm(md->scene, ob, NULL, derivedData, NULL, 0);;
|
DerivedMesh *dm= get_dm(ob, NULL, derivedData, NULL, 0);;
|
||||||
|
|
||||||
modifier_vgroup_cache(md, vertexCos); /* if next modifier needs original vertices */
|
modifier_vgroup_cache(md, vertexCos); /* if next modifier needs original vertices */
|
||||||
|
|
||||||
@@ -352,11 +357,13 @@ static void deformVerts(
|
|||||||
dm->release(dm);
|
dm->release(dm);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void deformVertsEM(
|
static void deformVertsEM(ModifierData *md, Object *ob,
|
||||||
ModifierData *md, Object *ob, struct EditMesh *editData,
|
struct EditMesh *UNUSED(editData),
|
||||||
DerivedMesh *derivedData, float (*vertexCos)[3], int numVerts)
|
DerivedMesh *derivedData,
|
||||||
|
float (*vertexCos)[3],
|
||||||
|
int numVerts)
|
||||||
{
|
{
|
||||||
DerivedMesh *dm= get_dm(md->scene, ob, NULL, derivedData, NULL, 0);;
|
DerivedMesh *dm= get_dm(ob, NULL, derivedData, NULL, 0);;
|
||||||
|
|
||||||
meshdeformModifier_do(md, ob, dm, vertexCos, numVerts);
|
meshdeformModifier_do(md, ob, dm, vertexCos, numVerts);
|
||||||
|
|
||||||
|
|||||||
@@ -74,8 +74,10 @@ static void foreachObjectLink(
|
|||||||
walk(userData, ob, &mmd->mirror_ob);
|
walk(userData, ob, &mmd->mirror_ob);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void updateDepgraph(ModifierData *md, DagForest *forest, struct Scene *scene,
|
static void updateDepgraph(ModifierData *md, DagForest *forest,
|
||||||
Object *ob, DagNode *obNode)
|
struct Scene *UNUSED(scene),
|
||||||
|
Object *UNUSED(ob),
|
||||||
|
DagNode *obNode)
|
||||||
{
|
{
|
||||||
MirrorModifierData *mmd = (MirrorModifierData*) md;
|
MirrorModifierData *mmd = (MirrorModifierData*) md;
|
||||||
|
|
||||||
@@ -298,9 +300,10 @@ static DerivedMesh *mirrorModifier__doMirror(MirrorModifierData *mmd,
|
|||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
static DerivedMesh *applyModifier(
|
static DerivedMesh *applyModifier(ModifierData *md, Object *ob,
|
||||||
ModifierData *md, Object *ob, DerivedMesh *derivedData,
|
DerivedMesh *derivedData,
|
||||||
int useRenderParams, int isFinalCalc)
|
int UNUSED(useRenderParams),
|
||||||
|
int UNUSED(isFinalCalc))
|
||||||
{
|
{
|
||||||
DerivedMesh *result;
|
DerivedMesh *result;
|
||||||
MirrorModifierData *mmd = (MirrorModifierData*) md;
|
MirrorModifierData *mmd = (MirrorModifierData*) md;
|
||||||
@@ -313,9 +316,9 @@ static DerivedMesh *applyModifier(
|
|||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
static DerivedMesh *applyModifierEM(
|
static DerivedMesh *applyModifierEM(ModifierData *md, Object *ob,
|
||||||
ModifierData *md, Object *ob, struct EditMesh *editData,
|
struct EditMesh *UNUSED(editData),
|
||||||
DerivedMesh *derivedData)
|
DerivedMesh *derivedData)
|
||||||
{
|
{
|
||||||
return applyModifier(md, ob, derivedData, 0, 1);
|
return applyModifier(md, ob, derivedData, 0, 1);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -34,13 +34,14 @@
|
|||||||
* ***** END GPL LICENSE BLOCK *****
|
* ***** END GPL LICENSE BLOCK *****
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
#include "BKE_utildefines.h"
|
||||||
#include "MOD_modifiertypes.h"
|
#include "MOD_modifiertypes.h"
|
||||||
|
|
||||||
/* We only need to define isDisabled; because it always returns 1,
|
/* We only need to define isDisabled; because it always returns 1,
|
||||||
* no other functions will be called
|
* no other functions will be called
|
||||||
*/
|
*/
|
||||||
|
|
||||||
static int isDisabled(ModifierData *md, int userRenderParams)
|
static int isDisabled(ModifierData *UNUSED(md), int UNUSED(userRenderParams))
|
||||||
{
|
{
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -72,12 +72,14 @@ static void copyData(ModifierData *md, ModifierData *target)
|
|||||||
tpimd->random_position = pimd->random_position;
|
tpimd->random_position = pimd->random_position;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int dependsOnTime(ModifierData *md)
|
static int dependsOnTime(ModifierData *UNUSED(md))
|
||||||
{
|
{
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
static void updateDepgraph(ModifierData *md, DagForest *forest,
|
static void updateDepgraph(ModifierData *md, DagForest *forest,
|
||||||
struct Scene *scene,Object *ob, DagNode *obNode)
|
struct Scene *UNUSED(scene),
|
||||||
|
Object *UNUSED(ob),
|
||||||
|
DagNode *obNode)
|
||||||
{
|
{
|
||||||
ParticleInstanceModifierData *pimd = (ParticleInstanceModifierData*) md;
|
ParticleInstanceModifierData *pimd = (ParticleInstanceModifierData*) md;
|
||||||
|
|
||||||
@@ -98,9 +100,10 @@ static void foreachObjectLink(ModifierData *md, Object *ob,
|
|||||||
walk(userData, ob, &pimd->ob);
|
walk(userData, ob, &pimd->ob);
|
||||||
}
|
}
|
||||||
|
|
||||||
static DerivedMesh * applyModifier(
|
static DerivedMesh * applyModifier(ModifierData *md, Object *ob,
|
||||||
ModifierData *md, Object *ob, DerivedMesh *derivedData,
|
DerivedMesh *derivedData,
|
||||||
int useRenderParams, int isFinalCalc)
|
int UNUSED(useRenderParams),
|
||||||
|
int UNUSED(isFinalCalc))
|
||||||
{
|
{
|
||||||
DerivedMesh *dm = derivedData, *result;
|
DerivedMesh *dm = derivedData, *result;
|
||||||
ParticleInstanceModifierData *pimd= (ParticleInstanceModifierData*) md;
|
ParticleInstanceModifierData *pimd= (ParticleInstanceModifierData*) md;
|
||||||
@@ -306,9 +309,9 @@ static DerivedMesh * applyModifier(
|
|||||||
|
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
static DerivedMesh *applyModifierEM(
|
static DerivedMesh *applyModifierEM(ModifierData *md, Object *ob,
|
||||||
ModifierData *md, Object *ob, struct EditMesh *editData,
|
struct EditMesh *UNUSED(editData),
|
||||||
DerivedMesh *derivedData)
|
DerivedMesh *derivedData)
|
||||||
{
|
{
|
||||||
return applyModifier(md, ob, derivedData, 0, 1);
|
return applyModifier(md, ob, derivedData, 0, 1);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -34,6 +34,7 @@
|
|||||||
|
|
||||||
#include "DNA_material_types.h"
|
#include "DNA_material_types.h"
|
||||||
|
|
||||||
|
#include "BKE_utildefines.h"
|
||||||
#include "BKE_cdderivedmesh.h"
|
#include "BKE_cdderivedmesh.h"
|
||||||
#include "BKE_material.h"
|
#include "BKE_material.h"
|
||||||
#include "BKE_modifier.h"
|
#include "BKE_modifier.h"
|
||||||
@@ -119,9 +120,12 @@ static CustomDataMask requiredDataMask(Object *ob, ModifierData *md)
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* saves the current emitter state for a particle system and calculates particles */
|
/* saves the current emitter state for a particle system and calculates particles */
|
||||||
static void deformVerts(
|
static void deformVerts(ModifierData *md, Object *ob,
|
||||||
ModifierData *md, Object *ob, DerivedMesh *derivedData,
|
DerivedMesh *derivedData,
|
||||||
float (*vertexCos)[3], int numVerts, int useRenderParams, int isFinalCalc)
|
float (*vertexCos)[3],
|
||||||
|
int UNUSED(numVerts),
|
||||||
|
int UNUSED(useRenderParams),
|
||||||
|
int UNUSED(isFinalCalc))
|
||||||
{
|
{
|
||||||
DerivedMesh *dm = derivedData;
|
DerivedMesh *dm = derivedData;
|
||||||
ParticleSystemModifierData *psmd= (ParticleSystemModifierData*) md;
|
ParticleSystemModifierData *psmd= (ParticleSystemModifierData*) md;
|
||||||
@@ -137,7 +141,7 @@ static void deformVerts(
|
|||||||
return;
|
return;
|
||||||
|
|
||||||
if(dm==0) {
|
if(dm==0) {
|
||||||
dm= get_dm(md->scene, ob, NULL, NULL, vertexCos, 1);
|
dm= get_dm(ob, NULL, NULL, vertexCos, 1);
|
||||||
|
|
||||||
if(!dm)
|
if(!dm)
|
||||||
return;
|
return;
|
||||||
|
|||||||
@@ -37,6 +37,7 @@
|
|||||||
|
|
||||||
#include "BLI_math.h"
|
#include "BLI_math.h"
|
||||||
|
|
||||||
|
#include "BKE_utildefines.h"
|
||||||
#include "BKE_cdderivedmesh.h"
|
#include "BKE_cdderivedmesh.h"
|
||||||
|
|
||||||
#include "depsgraph_private.h"
|
#include "depsgraph_private.h"
|
||||||
@@ -128,8 +129,9 @@ static void copyData(ModifierData *md, ModifierData *target)
|
|||||||
}
|
}
|
||||||
|
|
||||||
static DerivedMesh *applyModifier(ModifierData *md, Object *ob,
|
static DerivedMesh *applyModifier(ModifierData *md, Object *ob,
|
||||||
DerivedMesh *derivedData,
|
DerivedMesh *derivedData,
|
||||||
int useRenderParams, int isFinalCalc)
|
int useRenderParams,
|
||||||
|
int UNUSED(isFinalCalc))
|
||||||
{
|
{
|
||||||
DerivedMesh *dm= derivedData;
|
DerivedMesh *dm= derivedData;
|
||||||
DerivedMesh *result;
|
DerivedMesh *result;
|
||||||
@@ -832,9 +834,10 @@ static DerivedMesh *applyModifier(ModifierData *md, Object *ob,
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
static void updateDepgraph(
|
static void updateDepgraph(ModifierData *md, DagForest *forest,
|
||||||
ModifierData *md, DagForest *forest,
|
struct Scene *UNUSED(scene),
|
||||||
struct Scene *scene, Object *ob, DagNode *obNode)
|
Object *UNUSED(ob),
|
||||||
|
DagNode *obNode)
|
||||||
{
|
{
|
||||||
ScrewModifierData *ltmd= (ScrewModifierData*) md;
|
ScrewModifierData *ltmd= (ScrewModifierData*) md;
|
||||||
|
|
||||||
@@ -859,13 +862,15 @@ static void foreachObjectLink(
|
|||||||
|
|
||||||
/* This dosnt work with material*/
|
/* This dosnt work with material*/
|
||||||
static DerivedMesh *applyModifierEM(
|
static DerivedMesh *applyModifierEM(
|
||||||
ModifierData *md, Object *ob, struct EditMesh *editData,
|
ModifierData *md,
|
||||||
|
Object *ob,
|
||||||
|
struct EditMesh *UNUSED(editData),
|
||||||
DerivedMesh *derivedData)
|
DerivedMesh *derivedData)
|
||||||
{
|
{
|
||||||
return applyModifier(md, ob, derivedData, 0, 1);
|
return applyModifier(md, ob, derivedData, 0, 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
static int dependsOnTime(ModifierData *md)
|
static int dependsOnTime(ModifierData *UNUSED(md))
|
||||||
{
|
{
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -34,6 +34,7 @@
|
|||||||
|
|
||||||
#include "DNA_key_types.h"
|
#include "DNA_key_types.h"
|
||||||
|
|
||||||
|
#include "BKE_utildefines.h"
|
||||||
#include "BKE_cdderivedmesh.h"
|
#include "BKE_cdderivedmesh.h"
|
||||||
#include "BKE_key.h"
|
#include "BKE_key.h"
|
||||||
#include "BKE_particle.h"
|
#include "BKE_particle.h"
|
||||||
@@ -42,9 +43,12 @@
|
|||||||
|
|
||||||
#include "MEM_guardedalloc.h"
|
#include "MEM_guardedalloc.h"
|
||||||
|
|
||||||
static void deformVerts(
|
static void deformVerts(ModifierData *md, Object *ob,
|
||||||
ModifierData *md, Object *ob, DerivedMesh *derivedData,
|
DerivedMesh *UNUSED(derivedData),
|
||||||
float (*vertexCos)[3], int numVerts, int useRenderParams, int isFinalCalc)
|
float (*vertexCos)[3],
|
||||||
|
int numVerts,
|
||||||
|
int UNUSED(useRenderParams),
|
||||||
|
int UNUSED(isFinalCalc))
|
||||||
{
|
{
|
||||||
KeyBlock *kb= ob_get_keyblock(ob);
|
KeyBlock *kb= ob_get_keyblock(ob);
|
||||||
float (*deformedVerts)[3];
|
float (*deformedVerts)[3];
|
||||||
@@ -58,9 +62,11 @@ static void deformVerts(
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static void deformVertsEM(
|
static void deformVertsEM(ModifierData *md, Object *ob,
|
||||||
ModifierData *md, Object *ob, struct EditMesh *editData,
|
struct EditMesh *UNUSED(editData),
|
||||||
DerivedMesh *derivedData, float (*vertexCos)[3], int numVerts)
|
DerivedMesh *derivedData,
|
||||||
|
float (*vertexCos)[3],
|
||||||
|
int numVerts)
|
||||||
{
|
{
|
||||||
Key *key= ob_get_key(ob);
|
Key *key= ob_get_key(ob);
|
||||||
|
|
||||||
@@ -68,10 +74,12 @@ static void deformVertsEM(
|
|||||||
deformVerts(md, ob, derivedData, vertexCos, numVerts, 0, 0);
|
deformVerts(md, ob, derivedData, vertexCos, numVerts, 0, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void deformMatricesEM(
|
static void deformMatricesEM(ModifierData *UNUSED(md), Object *ob,
|
||||||
ModifierData *md, Object *ob, struct EditMesh *editData,
|
struct EditMesh *UNUSED(editData),
|
||||||
DerivedMesh *derivedData, float (*vertexCos)[3],
|
DerivedMesh *UNUSED(derivedData),
|
||||||
float (*defMats)[3][3], int numVerts)
|
float UNUSED((*vertexCos)[3]),
|
||||||
|
float (*defMats)[3][3],
|
||||||
|
int numVerts)
|
||||||
{
|
{
|
||||||
Key *key= ob_get_key(ob);
|
Key *key= ob_get_key(ob);
|
||||||
KeyBlock *kb= ob_get_keyblock(ob);
|
KeyBlock *kb= ob_get_keyblock(ob);
|
||||||
|
|||||||
@@ -32,6 +32,7 @@
|
|||||||
|
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
|
|
||||||
|
#include "BKE_utildefines.h"
|
||||||
#include "BKE_cdderivedmesh.h"
|
#include "BKE_cdderivedmesh.h"
|
||||||
#include "BKE_modifier.h"
|
#include "BKE_modifier.h"
|
||||||
#include "BKE_shrinkwrap.h"
|
#include "BKE_shrinkwrap.h"
|
||||||
@@ -71,7 +72,7 @@ static void copyData(ModifierData *md, ModifierData *target)
|
|||||||
tsmd->subsurfLevels = smd->subsurfLevels;
|
tsmd->subsurfLevels = smd->subsurfLevels;
|
||||||
}
|
}
|
||||||
|
|
||||||
static CustomDataMask requiredDataMask(Object *ob, ModifierData *md)
|
static CustomDataMask requiredDataMask(Object *UNUSED(ob), ModifierData *md)
|
||||||
{
|
{
|
||||||
ShrinkwrapModifierData *smd = (ShrinkwrapModifierData *)md;
|
ShrinkwrapModifierData *smd = (ShrinkwrapModifierData *)md;
|
||||||
CustomDataMask dataMask = 0;
|
CustomDataMask dataMask = 0;
|
||||||
@@ -87,7 +88,7 @@ static CustomDataMask requiredDataMask(Object *ob, ModifierData *md)
|
|||||||
return dataMask;
|
return dataMask;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int isDisabled(ModifierData *md, int useRenderParams)
|
static int isDisabled(ModifierData *md, int UNUSED(useRenderParams))
|
||||||
{
|
{
|
||||||
ShrinkwrapModifierData *smd = (ShrinkwrapModifierData*) md;
|
ShrinkwrapModifierData *smd = (ShrinkwrapModifierData*) md;
|
||||||
return !smd->target;
|
return !smd->target;
|
||||||
@@ -102,14 +103,19 @@ static void foreachObjectLink(ModifierData *md, Object *ob, ObjectWalkFunc walk,
|
|||||||
walk(userData, ob, &smd->auxTarget);
|
walk(userData, ob, &smd->auxTarget);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void deformVerts(ModifierData *md, Object *ob, DerivedMesh *derivedData, float (*vertexCos)[3], int numVerts, int useRenderParams, int isFinalCalc)
|
static void deformVerts(ModifierData *md, Object *ob,
|
||||||
|
DerivedMesh *derivedData,
|
||||||
|
float (*vertexCos)[3],
|
||||||
|
int numVerts,
|
||||||
|
int UNUSED(useRenderParams),
|
||||||
|
int UNUSED(isFinalCalc))
|
||||||
{
|
{
|
||||||
DerivedMesh *dm = derivedData;
|
DerivedMesh *dm = derivedData;
|
||||||
CustomDataMask dataMask = requiredDataMask(ob, md);
|
CustomDataMask dataMask = requiredDataMask(ob, md);
|
||||||
|
|
||||||
/* ensure we get a CDDM with applied vertex coords */
|
/* ensure we get a CDDM with applied vertex coords */
|
||||||
if(dataMask)
|
if(dataMask)
|
||||||
dm= get_cddm(md->scene, ob, NULL, dm, vertexCos);
|
dm= get_cddm(ob, NULL, dm, vertexCos);
|
||||||
|
|
||||||
shrinkwrapModifier_deform((ShrinkwrapModifierData*)md, md->scene, ob, dm, vertexCos, numVerts);
|
shrinkwrapModifier_deform((ShrinkwrapModifierData*)md, md->scene, ob, dm, vertexCos, numVerts);
|
||||||
|
|
||||||
@@ -124,7 +130,7 @@ static void deformVertsEM(ModifierData *md, Object *ob, struct EditMesh *editDat
|
|||||||
|
|
||||||
/* ensure we get a CDDM with applied vertex coords */
|
/* ensure we get a CDDM with applied vertex coords */
|
||||||
if(dataMask)
|
if(dataMask)
|
||||||
dm= get_cddm(md->scene, ob, editData, dm, vertexCos);
|
dm= get_cddm(ob, editData, dm, vertexCos);
|
||||||
|
|
||||||
shrinkwrapModifier_deform((ShrinkwrapModifierData*)md, md->scene, ob, dm, vertexCos, numVerts);
|
shrinkwrapModifier_deform((ShrinkwrapModifierData*)md, md->scene, ob, dm, vertexCos, numVerts);
|
||||||
|
|
||||||
@@ -132,7 +138,10 @@ static void deformVertsEM(ModifierData *md, Object *ob, struct EditMesh *editDat
|
|||||||
dm->release(dm);
|
dm->release(dm);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void updateDepgraph(ModifierData *md, DagForest *forest, struct Scene *scene, Object *ob, DagNode *obNode)
|
static void updateDepgraph(ModifierData *md, DagForest *forest,
|
||||||
|
struct Scene *UNUSED(scene),
|
||||||
|
Object *UNUSED(ob),
|
||||||
|
DagNode *obNode)
|
||||||
{
|
{
|
||||||
ShrinkwrapModifierData *smd = (ShrinkwrapModifierData*) md;
|
ShrinkwrapModifierData *smd = (ShrinkwrapModifierData*) md;
|
||||||
|
|
||||||
|
|||||||
@@ -290,7 +290,7 @@ static void copyData(ModifierData *md, ModifierData *target)
|
|||||||
strcpy(tsmd->vgroup_name, smd->vgroup_name);
|
strcpy(tsmd->vgroup_name, smd->vgroup_name);
|
||||||
}
|
}
|
||||||
|
|
||||||
static CustomDataMask requiredDataMask(Object *ob, ModifierData *md)
|
static CustomDataMask requiredDataMask(Object *UNUSED(ob), ModifierData *md)
|
||||||
{
|
{
|
||||||
SimpleDeformModifierData *smd = (SimpleDeformModifierData *)md;
|
SimpleDeformModifierData *smd = (SimpleDeformModifierData *)md;
|
||||||
CustomDataMask dataMask = 0;
|
CustomDataMask dataMask = 0;
|
||||||
@@ -308,7 +308,10 @@ static void foreachObjectLink(ModifierData *md, Object *ob, void (*walk)(void *u
|
|||||||
walk(userData, ob, &smd->origin);
|
walk(userData, ob, &smd->origin);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void updateDepgraph(ModifierData *md, DagForest *forest, struct Scene *scene, Object *ob, DagNode *obNode)
|
static void updateDepgraph(ModifierData *md, DagForest *forest,
|
||||||
|
struct Scene *UNUSED(scene),
|
||||||
|
Object *UNUSED(ob),
|
||||||
|
DagNode *obNode)
|
||||||
{
|
{
|
||||||
SimpleDeformModifierData *smd = (SimpleDeformModifierData*)md;
|
SimpleDeformModifierData *smd = (SimpleDeformModifierData*)md;
|
||||||
|
|
||||||
@@ -316,7 +319,12 @@ static void updateDepgraph(ModifierData *md, DagForest *forest, struct Scene *sc
|
|||||||
dag_add_relation(forest, dag_get_node(forest, smd->origin), obNode, DAG_RL_OB_DATA, "SimpleDeform Modifier");
|
dag_add_relation(forest, dag_get_node(forest, smd->origin), obNode, DAG_RL_OB_DATA, "SimpleDeform Modifier");
|
||||||
}
|
}
|
||||||
|
|
||||||
static void deformVerts(ModifierData *md, Object *ob, DerivedMesh *derivedData, float (*vertexCos)[3], int numVerts, int useRenderParams, int isFinalCalc)
|
static void deformVerts(ModifierData *md, Object *ob,
|
||||||
|
DerivedMesh *derivedData,
|
||||||
|
float (*vertexCos)[3],
|
||||||
|
int numVerts,
|
||||||
|
int UNUSED(useRenderParams),
|
||||||
|
int UNUSED(isFinalCalc))
|
||||||
{
|
{
|
||||||
DerivedMesh *dm = derivedData;
|
DerivedMesh *dm = derivedData;
|
||||||
CustomDataMask dataMask = requiredDataMask(ob, md);
|
CustomDataMask dataMask = requiredDataMask(ob, md);
|
||||||
@@ -324,7 +332,7 @@ static void deformVerts(ModifierData *md, Object *ob, DerivedMesh *derivedData,
|
|||||||
/* we implement requiredDataMask but thats not really usefull since
|
/* we implement requiredDataMask but thats not really usefull since
|
||||||
mesh_calc_modifiers pass a NULL derivedData */
|
mesh_calc_modifiers pass a NULL derivedData */
|
||||||
if(dataMask)
|
if(dataMask)
|
||||||
dm= get_dm(md->scene, ob, NULL, dm, NULL, 0);
|
dm= get_dm(ob, NULL, dm, NULL, 0);
|
||||||
|
|
||||||
SimpleDeformModifier_do((SimpleDeformModifierData*)md, ob, dm, vertexCos, numVerts);
|
SimpleDeformModifier_do((SimpleDeformModifierData*)md, ob, dm, vertexCos, numVerts);
|
||||||
|
|
||||||
@@ -332,7 +340,11 @@ static void deformVerts(ModifierData *md, Object *ob, DerivedMesh *derivedData,
|
|||||||
dm->release(dm);
|
dm->release(dm);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void deformVertsEM(ModifierData *md, Object *ob, struct EditMesh *editData, DerivedMesh *derivedData, float (*vertexCos)[3], int numVerts)
|
static void deformVertsEM(ModifierData *md, Object *ob,
|
||||||
|
struct EditMesh *editData,
|
||||||
|
DerivedMesh *derivedData,
|
||||||
|
float (*vertexCos)[3],
|
||||||
|
int numVerts)
|
||||||
{
|
{
|
||||||
DerivedMesh *dm = derivedData;
|
DerivedMesh *dm = derivedData;
|
||||||
CustomDataMask dataMask = requiredDataMask(ob, md);
|
CustomDataMask dataMask = requiredDataMask(ob, md);
|
||||||
@@ -340,7 +352,7 @@ static void deformVertsEM(ModifierData *md, Object *ob, struct EditMesh *editDat
|
|||||||
/* we implement requiredDataMask but thats not really usefull since
|
/* we implement requiredDataMask but thats not really usefull since
|
||||||
mesh_calc_modifiers pass a NULL derivedData */
|
mesh_calc_modifiers pass a NULL derivedData */
|
||||||
if(dataMask)
|
if(dataMask)
|
||||||
dm= get_dm(md->scene, ob, editData, dm, NULL, 0);
|
dm= get_dm(ob, editData, dm, NULL, 0);
|
||||||
|
|
||||||
SimpleDeformModifier_do((SimpleDeformModifierData*)md, ob, dm, vertexCos, numVerts);
|
SimpleDeformModifier_do((SimpleDeformModifierData*)md, ob, dm, vertexCos, numVerts);
|
||||||
|
|
||||||
|
|||||||
@@ -36,6 +36,7 @@
|
|||||||
|
|
||||||
#include "DNA_object_types.h"
|
#include "DNA_object_types.h"
|
||||||
|
|
||||||
|
#include "BKE_utildefines.h"
|
||||||
#include "BKE_cdderivedmesh.h"
|
#include "BKE_cdderivedmesh.h"
|
||||||
#include "BKE_modifier.h"
|
#include "BKE_modifier.h"
|
||||||
#include "BKE_smoke.h"
|
#include "BKE_smoke.h"
|
||||||
@@ -71,12 +72,15 @@ static void freeData(ModifierData *md)
|
|||||||
smokeModifier_free (smd);
|
smokeModifier_free (smd);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void deformVerts(
|
static void deformVerts(ModifierData *md, Object *ob,
|
||||||
ModifierData *md, Object *ob, DerivedMesh *derivedData,
|
DerivedMesh *derivedData,
|
||||||
float (*vertexCos)[3], int numVerts, int useRenderParams, int isFinalCalc)
|
float (*vertexCos)[3],
|
||||||
|
int UNUSED(numVerts),
|
||||||
|
int useRenderParams,
|
||||||
|
int isFinalCalc)
|
||||||
{
|
{
|
||||||
SmokeModifierData *smd = (SmokeModifierData*) md;
|
SmokeModifierData *smd = (SmokeModifierData*) md;
|
||||||
DerivedMesh *dm = dm= get_cddm(md->scene, ob, NULL, derivedData, vertexCos);
|
DerivedMesh *dm = dm= get_cddm(ob, NULL, derivedData, vertexCos);
|
||||||
|
|
||||||
smokeModifier_do(smd, md->scene, ob, dm, useRenderParams, isFinalCalc);
|
smokeModifier_do(smd, md->scene, ob, dm, useRenderParams, isFinalCalc);
|
||||||
|
|
||||||
@@ -84,14 +88,15 @@ static void deformVerts(
|
|||||||
dm->release(dm);
|
dm->release(dm);
|
||||||
}
|
}
|
||||||
|
|
||||||
static int dependsOnTime(ModifierData *md)
|
static int dependsOnTime(ModifierData *UNUSED(md))
|
||||||
{
|
{
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void updateDepgraph(
|
static void updateDepgraph(ModifierData *UNUSED(md), DagForest *UNUSED(forest),
|
||||||
ModifierData *md, DagForest *forest, struct Scene *scene, Object *ob,
|
struct Scene *UNUSED(scene),
|
||||||
DagNode *obNode)
|
Object *UNUSED(ob),
|
||||||
|
DagNode *UNUSED(obNode))
|
||||||
{
|
{
|
||||||
/*SmokeModifierData *smd = (SmokeModifierData *) md;
|
/*SmokeModifierData *smd = (SmokeModifierData *) md;
|
||||||
if(smd && (smd->type & MOD_SMOKE_TYPE_DOMAIN) && smd->domain)
|
if(smd && (smd->type & MOD_SMOKE_TYPE_DOMAIN) && smd->domain)
|
||||||
|
|||||||
@@ -37,6 +37,7 @@
|
|||||||
#include "BKE_cdderivedmesh.h"
|
#include "BKE_cdderivedmesh.h"
|
||||||
#include "BKE_particle.h"
|
#include "BKE_particle.h"
|
||||||
#include "BKE_deform.h"
|
#include "BKE_deform.h"
|
||||||
|
#include "BKE_utildefines.h"
|
||||||
|
|
||||||
#include "MEM_guardedalloc.h"
|
#include "MEM_guardedalloc.h"
|
||||||
|
|
||||||
@@ -65,7 +66,7 @@ static void copyData(ModifierData *md, ModifierData *target)
|
|||||||
strncpy(tsmd->defgrp_name, smd->defgrp_name, 32);
|
strncpy(tsmd->defgrp_name, smd->defgrp_name, 32);
|
||||||
}
|
}
|
||||||
|
|
||||||
static int isDisabled(ModifierData *md, int useRenderParams)
|
static int isDisabled(ModifierData *md, int UNUSED(useRenderParams))
|
||||||
{
|
{
|
||||||
SmoothModifierData *smd = (SmoothModifierData*) md;
|
SmoothModifierData *smd = (SmoothModifierData*) md;
|
||||||
short flag;
|
short flag;
|
||||||
@@ -78,7 +79,7 @@ static int isDisabled(ModifierData *md, int useRenderParams)
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
static CustomDataMask requiredDataMask(Object *ob, ModifierData *md)
|
static CustomDataMask requiredDataMask(Object *UNUSED(ob), ModifierData *md)
|
||||||
{
|
{
|
||||||
SmoothModifierData *smd = (SmoothModifierData *)md;
|
SmoothModifierData *smd = (SmoothModifierData *)md;
|
||||||
CustomDataMask dataMask = 0;
|
CustomDataMask dataMask = 0;
|
||||||
@@ -219,9 +220,9 @@ static void smoothModifier_do(
|
|||||||
|
|
||||||
static void deformVerts(
|
static void deformVerts(
|
||||||
ModifierData *md, Object *ob, DerivedMesh *derivedData,
|
ModifierData *md, Object *ob, DerivedMesh *derivedData,
|
||||||
float (*vertexCos)[3], int numVerts, int useRenderParams, int isFinalCalc)
|
float (*vertexCos)[3], int numVerts, int UNUSED(useRenderParams), int UNUSED(isFinalCalc))
|
||||||
{
|
{
|
||||||
DerivedMesh *dm= get_dm(md->scene, ob, NULL, derivedData, NULL, 0);
|
DerivedMesh *dm= get_dm(ob, NULL, derivedData, NULL, 0);
|
||||||
|
|
||||||
smoothModifier_do((SmoothModifierData *)md, ob, dm,
|
smoothModifier_do((SmoothModifierData *)md, ob, dm,
|
||||||
vertexCos, numVerts);
|
vertexCos, numVerts);
|
||||||
@@ -234,7 +235,7 @@ static void deformVertsEM(
|
|||||||
ModifierData *md, Object *ob, struct EditMesh *editData,
|
ModifierData *md, Object *ob, struct EditMesh *editData,
|
||||||
DerivedMesh *derivedData, float (*vertexCos)[3], int numVerts)
|
DerivedMesh *derivedData, float (*vertexCos)[3], int numVerts)
|
||||||
{
|
{
|
||||||
DerivedMesh *dm= get_dm(md->scene, ob, editData, derivedData, NULL, 0);
|
DerivedMesh *dm= get_dm(ob, editData, derivedData, NULL, 0);
|
||||||
|
|
||||||
smoothModifier_do((SmoothModifierData *)md, ob, dm,
|
smoothModifier_do((SmoothModifierData *)md, ob, dm,
|
||||||
vertexCos, numVerts);
|
vertexCos, numVerts);
|
||||||
|
|||||||
@@ -32,20 +32,24 @@
|
|||||||
|
|
||||||
#include "DNA_scene_types.h"
|
#include "DNA_scene_types.h"
|
||||||
|
|
||||||
|
#include "BKE_utildefines.h"
|
||||||
#include "BKE_cdderivedmesh.h"
|
#include "BKE_cdderivedmesh.h"
|
||||||
#include "BKE_particle.h"
|
#include "BKE_particle.h"
|
||||||
#include "BKE_softbody.h"
|
#include "BKE_softbody.h"
|
||||||
|
|
||||||
#include "MOD_modifiertypes.h"
|
#include "MOD_modifiertypes.h"
|
||||||
|
|
||||||
static void deformVerts(
|
static void deformVerts(ModifierData *md, Object *ob,
|
||||||
ModifierData *md, Object *ob, DerivedMesh *derivedData,
|
DerivedMesh *UNUSED(derivedData),
|
||||||
float (*vertexCos)[3], int numVerts, int useRenderParams, int isFinalCalc)
|
float (*vertexCos)[3],
|
||||||
|
int numVerts,
|
||||||
|
int UNUSED(useRenderParams),
|
||||||
|
int UNUSED(isFinalCalc))
|
||||||
{
|
{
|
||||||
sbObjectStep(md->scene, ob, (float)md->scene->r.cfra, vertexCos, numVerts);
|
sbObjectStep(md->scene, ob, (float)md->scene->r.cfra, vertexCos, numVerts);
|
||||||
}
|
}
|
||||||
|
|
||||||
static int dependsOnTime(ModifierData *md)
|
static int dependsOnTime(ModifierData *UNUSED(md))
|
||||||
{
|
{
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -179,7 +179,7 @@ static void copyData(ModifierData *md, ModifierData *target)
|
|||||||
strcpy(tsmd->defgrp_name, smd->defgrp_name);
|
strcpy(tsmd->defgrp_name, smd->defgrp_name);
|
||||||
}
|
}
|
||||||
|
|
||||||
static CustomDataMask requiredDataMask(Object *ob, ModifierData *md)
|
static CustomDataMask requiredDataMask(Object *UNUSED(ob), ModifierData *md)
|
||||||
{
|
{
|
||||||
SolidifyModifierData *smd = (SolidifyModifierData*) md;
|
SolidifyModifierData *smd = (SolidifyModifierData*) md;
|
||||||
CustomDataMask dataMask = 0;
|
CustomDataMask dataMask = 0;
|
||||||
@@ -191,11 +191,10 @@ static CustomDataMask requiredDataMask(Object *ob, ModifierData *md)
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
static DerivedMesh *applyModifier(ModifierData *md,
|
static DerivedMesh *applyModifier(ModifierData *md, Object *ob,
|
||||||
Object *ob,
|
DerivedMesh *dm,
|
||||||
DerivedMesh *dm,
|
int UNUSED(useRenderParams),
|
||||||
int useRenderParams,
|
int UNUSED(isFinalCalc))
|
||||||
int isFinalCalc)
|
|
||||||
{
|
{
|
||||||
int i;
|
int i;
|
||||||
DerivedMesh *result;
|
DerivedMesh *result;
|
||||||
@@ -630,7 +629,7 @@ static DerivedMesh *applyModifier(ModifierData *md,
|
|||||||
|
|
||||||
static DerivedMesh *applyModifierEM(ModifierData *md,
|
static DerivedMesh *applyModifierEM(ModifierData *md,
|
||||||
Object *ob,
|
Object *ob,
|
||||||
struct EditMesh *editData,
|
struct EditMesh *UNUSED(editData),
|
||||||
DerivedMesh *derivedData)
|
DerivedMesh *derivedData)
|
||||||
{
|
{
|
||||||
return applyModifier(md, ob, derivedData, 0, 1);
|
return applyModifier(md, ob, derivedData, 0, 1);
|
||||||
|
|||||||
@@ -35,6 +35,7 @@
|
|||||||
#include "DNA_scene_types.h"
|
#include "DNA_scene_types.h"
|
||||||
#include "DNA_object_types.h"
|
#include "DNA_object_types.h"
|
||||||
|
|
||||||
|
#include "BKE_utildefines.h"
|
||||||
#include "BKE_cdderivedmesh.h"
|
#include "BKE_cdderivedmesh.h"
|
||||||
#include "BKE_scene.h"
|
#include "BKE_scene.h"
|
||||||
#include "BKE_subsurf.h"
|
#include "BKE_subsurf.h"
|
||||||
@@ -83,9 +84,10 @@ static int isDisabled(ModifierData *md, int useRenderParams)
|
|||||||
return get_render_subsurf_level(&md->scene->r, levels) == 0;
|
return get_render_subsurf_level(&md->scene->r, levels) == 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
static DerivedMesh *applyModifier(
|
static DerivedMesh *applyModifier(ModifierData *md, Object *UNUSED(ob),
|
||||||
ModifierData *md, Object *ob, DerivedMesh *derivedData,
|
DerivedMesh *derivedData,
|
||||||
int useRenderParams, int isFinalCalc)
|
int useRenderParams,
|
||||||
|
int isFinalCalc)
|
||||||
{
|
{
|
||||||
SubsurfModifierData *smd = (SubsurfModifierData*) md;
|
SubsurfModifierData *smd = (SubsurfModifierData*) md;
|
||||||
DerivedMesh *result;
|
DerivedMesh *result;
|
||||||
@@ -102,9 +104,9 @@ static DerivedMesh *applyModifier(
|
|||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
static DerivedMesh *applyModifierEM(
|
static DerivedMesh *applyModifierEM(ModifierData *md, Object *UNUSED(ob),
|
||||||
ModifierData *md, Object *ob, struct EditMesh *editData,
|
struct EditMesh *UNUSED(editData),
|
||||||
DerivedMesh *derivedData)
|
DerivedMesh *derivedData)
|
||||||
{
|
{
|
||||||
SubsurfModifierData *smd = (SubsurfModifierData*) md;
|
SubsurfModifierData *smd = (SubsurfModifierData*) md;
|
||||||
DerivedMesh *result;
|
DerivedMesh *result;
|
||||||
|
|||||||
@@ -36,6 +36,7 @@
|
|||||||
|
|
||||||
#include "BLI_math.h"
|
#include "BLI_math.h"
|
||||||
|
|
||||||
|
#include "BKE_utildefines.h"
|
||||||
#include "BKE_cdderivedmesh.h"
|
#include "BKE_cdderivedmesh.h"
|
||||||
|
|
||||||
#include "MOD_modifiertypes.h"
|
#include "MOD_modifiertypes.h"
|
||||||
@@ -76,14 +77,17 @@ static void freeData(ModifierData *md)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static int dependsOnTime(ModifierData *md)
|
static int dependsOnTime(ModifierData *UNUSED(md))
|
||||||
{
|
{
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void deformVerts(
|
static void deformVerts(ModifierData *md, Object *ob,
|
||||||
ModifierData *md, Object *ob, DerivedMesh *derivedData,
|
DerivedMesh *derivedData,
|
||||||
float (*vertexCos)[3], int numVerts, int useRenderParams, int isFinalCalc)
|
float (*vertexCos)[3],
|
||||||
|
int UNUSED(numVerts),
|
||||||
|
int UNUSED(useRenderParams),
|
||||||
|
int UNUSED(isFinalCalc))
|
||||||
{
|
{
|
||||||
SurfaceModifierData *surmd = (SurfaceModifierData*) md;
|
SurfaceModifierData *surmd = (SurfaceModifierData*) md;
|
||||||
unsigned int numverts = 0, i = 0;
|
unsigned int numverts = 0, i = 0;
|
||||||
@@ -93,7 +97,7 @@ static void deformVerts(
|
|||||||
|
|
||||||
/* if possible use/create DerivedMesh */
|
/* if possible use/create DerivedMesh */
|
||||||
if(derivedData) surmd->dm = CDDM_copy(derivedData);
|
if(derivedData) surmd->dm = CDDM_copy(derivedData);
|
||||||
else surmd->dm = get_dm(md->scene, ob, NULL, NULL, NULL, 0);
|
else surmd->dm = get_dm(ob, NULL, NULL, NULL, 0);
|
||||||
|
|
||||||
if(!ob->pd)
|
if(!ob->pd)
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -84,13 +84,13 @@ void validate_layer_name(const CustomData *data, int type, char *name, char *out
|
|||||||
|
|
||||||
/* if a layer name was given, try to find that layer */
|
/* if a layer name was given, try to find that layer */
|
||||||
if(name[0])
|
if(name[0])
|
||||||
index = CustomData_get_named_layer_index(data, CD_MTFACE, name);
|
index = CustomData_get_named_layer_index(data, type, name);
|
||||||
|
|
||||||
if(index < 0) {
|
if(index < 0) {
|
||||||
/* either no layer was specified, or the layer we want has been
|
/* either no layer was specified, or the layer we want has been
|
||||||
* deleted, so assign the active layer to name
|
* deleted, so assign the active layer to name
|
||||||
*/
|
*/
|
||||||
index = CustomData_get_active_layer_index(data, CD_MTFACE);
|
index = CustomData_get_active_layer_index(data, type);
|
||||||
strcpy(outname, data->layers[index].name);
|
strcpy(outname, data->layers[index].name);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
@@ -98,13 +98,13 @@ void validate_layer_name(const CustomData *data, int type, char *name, char *out
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* returns a cdderivedmesh if dm == NULL or is another type of derivedmesh */
|
/* returns a cdderivedmesh if dm == NULL or is another type of derivedmesh */
|
||||||
DerivedMesh *get_cddm(struct Scene *scene, Object *ob, struct EditMesh *em, DerivedMesh *dm, float (*vertexCos)[3])
|
DerivedMesh *get_cddm(Object *ob, struct EditMesh *em, DerivedMesh *dm, float (*vertexCos)[3])
|
||||||
{
|
{
|
||||||
if(dm && dm->type == DM_TYPE_CDDM)
|
if(dm && dm->type == DM_TYPE_CDDM)
|
||||||
return dm;
|
return dm;
|
||||||
|
|
||||||
if(!dm) {
|
if(!dm) {
|
||||||
dm= get_dm(scene, ob, em, dm, vertexCos, 0);
|
dm= get_dm(ob, em, dm, vertexCos, 0);
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
dm= CDDM_copy(dm);
|
dm= CDDM_copy(dm);
|
||||||
@@ -118,7 +118,7 @@ DerivedMesh *get_cddm(struct Scene *scene, Object *ob, struct EditMesh *em, Deri
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* returns a derived mesh if dm == NULL, for deforming modifiers that need it */
|
/* returns a derived mesh if dm == NULL, for deforming modifiers that need it */
|
||||||
DerivedMesh *get_dm(struct Scene *scene, Object *ob, struct EditMesh *em, DerivedMesh *dm, float (*vertexCos)[3], int orco)
|
DerivedMesh *get_dm(Object *ob, struct EditMesh *em, DerivedMesh *dm, float (*vertexCos)[3], int orco)
|
||||||
{
|
{
|
||||||
if(dm)
|
if(dm)
|
||||||
return dm;
|
return dm;
|
||||||
@@ -143,7 +143,7 @@ DerivedMesh *get_dm(struct Scene *scene, Object *ob, struct EditMesh *em, Derive
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* only called by BKE_modifier.h/modifier.c */
|
/* only called by BKE_modifier.h/modifier.c */
|
||||||
void modifier_type_init(ModifierTypeInfo *types[], ModifierType type)
|
void modifier_type_init(ModifierTypeInfo *types[])
|
||||||
{
|
{
|
||||||
memset(types, 0, sizeof(types));
|
memset(types, 0, sizeof(types));
|
||||||
#define INIT_TYPE(typeName) (types[eModifierType_##typeName] = &modifierType_##typeName)
|
#define INIT_TYPE(typeName) (types[eModifierType_##typeName] = &modifierType_##typeName)
|
||||||
|
|||||||
@@ -40,9 +40,9 @@ struct ModifierData;
|
|||||||
void get_texture_value(struct Tex *texture, float *tex_co, struct TexResult *texres);
|
void get_texture_value(struct Tex *texture, float *tex_co, struct TexResult *texres);
|
||||||
void modifier_vgroup_cache(struct ModifierData *md, float (*vertexCos)[3]);
|
void modifier_vgroup_cache(struct ModifierData *md, float (*vertexCos)[3]);
|
||||||
void validate_layer_name(const struct CustomData *data, int type, char *name, char *outname);
|
void validate_layer_name(const struct CustomData *data, int type, char *name, char *outname);
|
||||||
struct DerivedMesh *get_cddm(struct Scene *scene, struct Object *ob, struct EditMesh *em, struct DerivedMesh *dm, float (*vertexCos)[3]);
|
struct DerivedMesh *get_cddm(struct Object *ob, struct EditMesh *em, struct DerivedMesh *dm, float (*vertexCos)[3]);
|
||||||
struct DerivedMesh *get_dm(struct Scene *scene, struct Object *ob, struct EditMesh *em, struct DerivedMesh *dm, float (*vertexCos)[3], int orco);
|
struct DerivedMesh *get_dm(struct Object *ob, struct EditMesh *em, struct DerivedMesh *dm, float (*vertexCos)[3], int orco);
|
||||||
|
|
||||||
void modifier_type_init(struct ModifierTypeInfo *types[], ModifierType type);
|
void modifier_type_init(struct ModifierTypeInfo *types[]);
|
||||||
|
|
||||||
#endif /* MOD_UTIL_H */
|
#endif /* MOD_UTIL_H */
|
||||||
|
|||||||
@@ -39,6 +39,7 @@
|
|||||||
#include "BLI_math.h"
|
#include "BLI_math.h"
|
||||||
#include "BLI_uvproject.h"
|
#include "BLI_uvproject.h"
|
||||||
|
|
||||||
|
#include "BKE_utildefines.h"
|
||||||
#include "BKE_DerivedMesh.h"
|
#include "BKE_DerivedMesh.h"
|
||||||
|
|
||||||
#include "MOD_modifiertypes.h"
|
#include "MOD_modifiertypes.h"
|
||||||
@@ -78,7 +79,7 @@ static void copyData(ModifierData *md, ModifierData *target)
|
|||||||
tumd->scaley = umd->scaley;
|
tumd->scaley = umd->scaley;
|
||||||
}
|
}
|
||||||
|
|
||||||
static CustomDataMask requiredDataMask(Object *ob, ModifierData *md)
|
static CustomDataMask requiredDataMask(Object *UNUSED(ob), ModifierData *UNUSED(md))
|
||||||
{
|
{
|
||||||
CustomDataMask dataMask = 0;
|
CustomDataMask dataMask = 0;
|
||||||
|
|
||||||
@@ -109,8 +110,10 @@ static void foreachIDLink(ModifierData *md, Object *ob,
|
|||||||
userData);
|
userData);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void updateDepgraph(ModifierData *md,
|
static void updateDepgraph(ModifierData *md, DagForest *forest,
|
||||||
DagForest *forest, struct Scene *scene, Object *ob, DagNode *obNode)
|
struct Scene *UNUSED(scene),
|
||||||
|
Object *UNUSED(ob),
|
||||||
|
DagNode *obNode)
|
||||||
{
|
{
|
||||||
UVProjectModifierData *umd = (UVProjectModifierData*) md;
|
UVProjectModifierData *umd = (UVProjectModifierData*) md;
|
||||||
int i;
|
int i;
|
||||||
@@ -376,9 +379,10 @@ static DerivedMesh *uvprojectModifier_do(UVProjectModifierData *umd,
|
|||||||
return dm;
|
return dm;
|
||||||
}
|
}
|
||||||
|
|
||||||
static DerivedMesh *applyModifier(
|
static DerivedMesh *applyModifier(ModifierData *md, Object *ob,
|
||||||
ModifierData *md, Object *ob, DerivedMesh *derivedData,
|
DerivedMesh *derivedData,
|
||||||
int useRenderParams, int isFinalCalc)
|
int UNUSED(useRenderParams),
|
||||||
|
int UNUSED(isFinalCalc))
|
||||||
{
|
{
|
||||||
DerivedMesh *result;
|
DerivedMesh *result;
|
||||||
UVProjectModifierData *umd = (UVProjectModifierData*) md;
|
UVProjectModifierData *umd = (UVProjectModifierData*) md;
|
||||||
@@ -388,9 +392,9 @@ static DerivedMesh *applyModifier(
|
|||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
static DerivedMesh *applyModifierEM(
|
static DerivedMesh *applyModifierEM(ModifierData *md, Object *ob,
|
||||||
ModifierData *md, Object *ob, struct EditMesh *editData,
|
struct EditMesh *UNUSED(editData),
|
||||||
DerivedMesh *derivedData)
|
DerivedMesh *derivedData)
|
||||||
{
|
{
|
||||||
return applyModifier(md, ob, derivedData, 0, 1);
|
return applyModifier(md, ob, derivedData, 0, 1);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -36,6 +36,7 @@
|
|||||||
#include "DNA_scene_types.h"
|
#include "DNA_scene_types.h"
|
||||||
#include "DNA_object_types.h"
|
#include "DNA_object_types.h"
|
||||||
|
|
||||||
|
#include "BKE_utildefines.h"
|
||||||
#include "BKE_DerivedMesh.h"
|
#include "BKE_DerivedMesh.h"
|
||||||
#include "BKE_object.h"
|
#include "BKE_object.h"
|
||||||
#include "BKE_deform.h"
|
#include "BKE_deform.h"
|
||||||
@@ -93,7 +94,7 @@ static void copyData(ModifierData *md, ModifierData *target)
|
|||||||
strncpy(twmd->defgrp_name, wmd->defgrp_name, 32);
|
strncpy(twmd->defgrp_name, wmd->defgrp_name, 32);
|
||||||
}
|
}
|
||||||
|
|
||||||
static int dependsOnTime(ModifierData *md)
|
static int dependsOnTime(ModifierData *UNUSED(md))
|
||||||
{
|
{
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
@@ -118,9 +119,10 @@ static void foreachIDLink(ModifierData *md, Object *ob,
|
|||||||
foreachObjectLink(md, ob, (ObjectWalkFunc)walk, userData);
|
foreachObjectLink(md, ob, (ObjectWalkFunc)walk, userData);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void updateDepgraph(
|
static void updateDepgraph(ModifierData *md, DagForest *forest,
|
||||||
ModifierData *md, DagForest *forest, Scene *scene, Object *ob,
|
Scene *UNUSED(scene),
|
||||||
DagNode *obNode)
|
Object *UNUSED(ob),
|
||||||
|
DagNode *obNode)
|
||||||
{
|
{
|
||||||
WaveModifierData *wmd = (WaveModifierData*) md;
|
WaveModifierData *wmd = (WaveModifierData*) md;
|
||||||
|
|
||||||
@@ -139,7 +141,7 @@ static void updateDepgraph(
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static CustomDataMask requiredDataMask(Object *ob, ModifierData *md)
|
static CustomDataMask requiredDataMask(Object *UNUSED(ob), ModifierData *md)
|
||||||
{
|
{
|
||||||
WaveModifierData *wmd = (WaveModifierData *)md;
|
WaveModifierData *wmd = (WaveModifierData *)md;
|
||||||
CustomDataMask dataMask = 0;
|
CustomDataMask dataMask = 0;
|
||||||
@@ -399,17 +401,20 @@ static void waveModifier_do(WaveModifierData *md,
|
|||||||
if(wmd->texture) MEM_freeN(tex_co);
|
if(wmd->texture) MEM_freeN(tex_co);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void deformVerts(
|
static void deformVerts(ModifierData *md, Object *ob,
|
||||||
ModifierData *md, Object *ob, DerivedMesh *derivedData,
|
DerivedMesh *derivedData,
|
||||||
float (*vertexCos)[3], int numVerts, int useRenderParams, int isFinalCalc)
|
float (*vertexCos)[3],
|
||||||
|
int numVerts,
|
||||||
|
int UNUSED(useRenderParams),
|
||||||
|
int UNUSED(isFinalCalc))
|
||||||
{
|
{
|
||||||
DerivedMesh *dm= derivedData;
|
DerivedMesh *dm= derivedData;
|
||||||
WaveModifierData *wmd = (WaveModifierData *)md;
|
WaveModifierData *wmd = (WaveModifierData *)md;
|
||||||
|
|
||||||
if(wmd->flag & MOD_WAVE_NORM)
|
if(wmd->flag & MOD_WAVE_NORM)
|
||||||
dm= get_cddm(md->scene, ob, NULL, dm, vertexCos);
|
dm= get_cddm(ob, NULL, dm, vertexCos);
|
||||||
else if(wmd->texture || wmd->defgrp_name[0])
|
else if(wmd->texture || wmd->defgrp_name[0])
|
||||||
dm= get_dm(md->scene, ob, NULL, dm, NULL, 0);
|
dm= get_dm(ob, NULL, dm, NULL, 0);
|
||||||
|
|
||||||
waveModifier_do(wmd, md->scene, ob, dm, vertexCos, numVerts);
|
waveModifier_do(wmd, md->scene, ob, dm, vertexCos, numVerts);
|
||||||
|
|
||||||
@@ -425,9 +430,9 @@ static void deformVertsEM(
|
|||||||
WaveModifierData *wmd = (WaveModifierData *)md;
|
WaveModifierData *wmd = (WaveModifierData *)md;
|
||||||
|
|
||||||
if(wmd->flag & MOD_WAVE_NORM)
|
if(wmd->flag & MOD_WAVE_NORM)
|
||||||
dm= get_cddm(md->scene, ob, editData, dm, vertexCos);
|
dm= get_cddm(ob, editData, dm, vertexCos);
|
||||||
else if(wmd->texture || wmd->defgrp_name[0])
|
else if(wmd->texture || wmd->defgrp_name[0])
|
||||||
dm= get_dm(md->scene, ob, editData, dm, NULL, 0);
|
dm= get_dm(ob, editData, dm, NULL, 0);
|
||||||
|
|
||||||
waveModifier_do(wmd, md->scene, ob, dm, vertexCos, numVerts);
|
waveModifier_do(wmd, md->scene, ob, dm, vertexCos, numVerts);
|
||||||
|
|
||||||
|
|||||||
@@ -178,7 +178,7 @@ static int read_voxeldata_header(FILE *fp, struct VoxelData *vd)
|
|||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void init_frame_smoke(VoxelData *vd, Tex *tex)
|
static void init_frame_smoke(VoxelData *vd)
|
||||||
{
|
{
|
||||||
Object *ob;
|
Object *ob;
|
||||||
ModifierData *md;
|
ModifierData *md;
|
||||||
@@ -282,7 +282,7 @@ static void cache_voxeldata(struct Render *re,Tex *tex)
|
|||||||
load_frame_image_sequence(vd, tex);
|
load_frame_image_sequence(vd, tex);
|
||||||
return;
|
return;
|
||||||
case TEX_VD_SMOKE:
|
case TEX_VD_SMOKE:
|
||||||
init_frame_smoke(vd, tex);
|
init_frame_smoke(vd);
|
||||||
return;
|
return;
|
||||||
case TEX_VD_BLENDERVOXEL:
|
case TEX_VD_BLENDERVOXEL:
|
||||||
if (!BLI_exists(vd->source_path)) return;
|
if (!BLI_exists(vd->source_path)) return;
|
||||||
|
|||||||
Reference in New Issue
Block a user