forked from bartvdbraak/blender
Bugfix Smoke / DynamicPaint: Missing update call from depsgraph was missing when force fields were used.
This commit is contained in:
parent
6829f613c2
commit
958cf139f6
@ -345,6 +345,7 @@ void modifiers_clearErrors(struct Object *ob);
|
||||
int modifiers_getCageIndex(struct Scene *scene, struct Object *ob,
|
||||
int *lastPossibleCageIndex_r, int virtual_);
|
||||
|
||||
int modifiers_isModifierEnabled(struct Object *ob, int modifierType);
|
||||
int modifiers_isSoftbodyEnabled(struct Object *ob);
|
||||
int modifiers_isClothEnabled(struct Object *ob);
|
||||
int modifiers_isParticleEnabled(struct Object *ob);
|
||||
|
@ -559,7 +559,11 @@ static void build_dag_object(DagForest *dag, DagNode *scenenode, Scene *scene, O
|
||||
|
||||
/* softbody collision */
|
||||
if ((ob->type == OB_MESH) || (ob->type == OB_CURVE) || (ob->type == OB_LATTICE)) {
|
||||
if (modifiers_isSoftbodyEnabled(ob) || modifiers_isClothEnabled(ob) || ob->particlesystem.first)
|
||||
if (modifiers_isModifierEnabled(ob, eModifierType_Softbody)
|
||||
|| modifiers_isModifierEnabled(ob, eModifierType_Cloth)
|
||||
|| modifiers_isModifierEnabled(ob, eModifierType_Smoke)
|
||||
|| modifiers_isModifierEnabled(ob, eModifierType_DynamicPaint)
|
||||
|| ob->particlesystem.first)
|
||||
dag_add_collision_field_relation(dag, scene, ob, node); /* TODO: use effectorweight->group */
|
||||
}
|
||||
|
||||
|
@ -331,6 +331,13 @@ int modifiers_isClothEnabled(Object *ob)
|
||||
return (md && md->mode & (eModifierMode_Realtime | eModifierMode_Render));
|
||||
}
|
||||
|
||||
int modifiers_isModifierEnabled(Object *ob, int modifierType)
|
||||
{
|
||||
ModifierData *md = modifiers_findByType(ob, modifierType);
|
||||
|
||||
return (md && md->mode & (eModifierMode_Realtime | eModifierMode_Render));
|
||||
}
|
||||
|
||||
int modifiers_isParticleEnabled(Object *ob)
|
||||
{
|
||||
ModifierData *md = modifiers_findByType(ob, eModifierType_ParticleSystem);
|
||||
|
Loading…
Reference in New Issue
Block a user