static void updateDepgraph(ModifierData *md, DagForest *forest, struct Scene *UNUSED(scene), Object *UNUSED(ob), DagNode *obNode) { SimpleDeformModifierData *smd = (SimpleDeformModifierData *)md; if (smd->origin) dag_add_relation(forest, dag_get_node(forest, smd->origin), obNode, DAG_RL_OB_DATA, "SimpleDeform Modifier"); }
static void updateDepgraph(ModifierData *md, DagForest *forest, struct Main *UNUSED(bmain), struct Scene *UNUSED(scene), Object *UNUSED(ob), DagNode *obNode) { WarpModifierData *wmd = (WarpModifierData *) md; if (wmd->object_from && wmd->object_to) { DagNode *fromNode = dag_get_node(forest, wmd->object_from); DagNode *toNode = dag_get_node(forest, wmd->object_to); dag_add_relation(forest, fromNode, obNode, DAG_RL_DATA_DATA | DAG_RL_OB_DATA, "Warp Modifier1"); dag_add_relation(forest, toNode, obNode, DAG_RL_DATA_DATA | DAG_RL_OB_DATA, "Warp Modifier2"); } if ((wmd->texmapping == MOD_DISP_MAP_OBJECT) && wmd->map_object) { DagNode *curNode = dag_get_node(forest, wmd->map_object); dag_add_relation(forest, curNode, obNode, DAG_RL_DATA_DATA | DAG_RL_OB_DATA, "Warp Modifier3"); } }
static void updateDepgraph(ModifierData *md, const ModifierUpdateDepsgraphContext *ctx) { CastModifierData *cmd = (CastModifierData *) md; if (cmd->object) { DagNode *curNode = dag_get_node(ctx->forest, cmd->object); dag_add_relation(ctx->forest, curNode, ctx->obNode, DAG_RL_OB_DATA, "Cast Modifier"); } }
static void updateDepgraph(ModifierData *md, const ModifierUpdateDepsgraphContext *ctx) { LatticeModifierData *lmd = (LatticeModifierData *) md; if (lmd->object) { DagNode *latNode = dag_get_node(ctx->forest, lmd->object); dag_add_relation(ctx->forest, latNode, ctx->obNode, DAG_RL_DATA_DATA | DAG_RL_OB_DATA, "Lattice Modifier"); } }
static void updateDepgraph(ModifierData *md, const ModifierUpdateDepsgraphContext *ctx) { CurveModifierData *cmd = (CurveModifierData *) md; if (cmd->object) { DagNode *curNode = dag_get_node(ctx->forest, cmd->object); curNode->eval_flags |= DAG_EVAL_NEED_CURVE_PATH; dag_add_relation(ctx->forest, curNode, ctx->obNode, DAG_RL_DATA_DATA | DAG_RL_OB_DATA, "Curve Modifier"); } }
static void uv_warp_deps_object_bone(DagForest *forest, DagNode *obNode, Object *obj, const char *bonename) { if (obj) { DagNode *curNode = dag_get_node(forest, obj); if (bonename[0]) dag_add_relation(forest, curNode, obNode, DAG_RL_OB_DATA | DAG_RL_DATA_DATA, "UVWarp Modifier"); else dag_add_relation(forest, curNode, obNode, DAG_RL_OB_DATA, "UVWarp Modifier"); } }
static void updateDepgraph(ModifierData *md, DagForest *forest, Scene *UNUSED(scene), Object *UNUSED(ob), DagNode *obNode) { WaveModifierData *wmd = (WaveModifierData*) md; if(wmd->objectcenter) { DagNode *curNode = dag_get_node(forest, wmd->objectcenter); dag_add_relation(forest, curNode, obNode, DAG_RL_OB_DATA, "Wave Modifier"); } if(wmd->map_object) { DagNode *curNode = dag_get_node(forest, wmd->map_object); dag_add_relation(forest, curNode, obNode, DAG_RL_OB_DATA, "Wave Modifer"); } }
static void updateDepgraph(ModifierData *md, DagForest *forest, struct Main *UNUSED(bmain), struct Scene *UNUSED(scene), Object *UNUSED(ob), DagNode *obNode) { NormalEditModifierData *enmd = (NormalEditModifierData *) md; if (enmd->target) { DagNode *Node = dag_get_node(forest, enmd->target); dag_add_relation(forest, Node, obNode, DAG_RL_OB_DATA, "NormalEdit Modifier"); } }
static void updateDepgraph(ModifierData *md, const ModifierUpdateDepsgraphContext *ctx) { MaskModifierData *mmd = (MaskModifierData *)md; if (mmd->ob_arm) { bArmature *arm = (bArmature *)mmd->ob_arm->data; DagNode *armNode = dag_get_node(ctx->forest, mmd->ob_arm); /* tag relationship in depsgraph, but also on the armature */ dag_add_relation(ctx->forest, armNode, ctx->obNode, DAG_RL_DATA_DATA | DAG_RL_OB_DATA, "Mask Modifier"); arm->flag |= ARM_HAS_VIZ_DEPS; } }
static void updateDepgraph(ModifierData *md, DagForest *forest, struct Scene *UNUSED(scene), Object *UNUSED(ob), DagNode *obNode) { DataTransferModifierData *dtmd = (DataTransferModifierData *) md; DagNode *curNode; if (dtmd->ob_source) { curNode = dag_get_node(forest, dtmd->ob_source); dag_add_relation(forest, curNode, obNode, DAG_RL_DATA_DATA | DAG_RL_OB_DATA, "DataTransfer Modifier"); } }
static void updateDepgraph(ModifierData *md, DagForest *forest, struct Scene *UNUSED(scene), Object *UNUSED(ob), DagNode *obNode) { MaskModifierData *mmd = (MaskModifierData *)md; if (mmd->ob_arm) { DagNode *armNode = dag_get_node(forest, mmd->ob_arm); dag_add_relation(forest, armNode, obNode, DAG_RL_DATA_DATA | DAG_RL_OB_DATA, "Mask Modifier"); } }
static void updateDepgraph(ModifierData *md, DagForest *forest, struct Scene *UNUSED(scene), Object *UNUSED(ob), DagNode *obNode) { WeightVGProximityModifierData *wmd = (WeightVGProximityModifierData *) md; DagNode *curNode; if (wmd->proximity_ob_target) { curNode = dag_get_node(forest, wmd->proximity_ob_target); dag_add_relation(forest, curNode, obNode, DAG_RL_DATA_DATA | DAG_RL_OB_DATA, "WeightVGProximity Modifier"); } if (wmd->mask_tex_map_obj && wmd->mask_tex_mapping == MOD_DISP_MAP_OBJECT) { curNode = dag_get_node(forest, wmd->mask_tex_map_obj); dag_add_relation(forest, curNode, obNode, DAG_RL_DATA_DATA | DAG_RL_OB_DATA, "WeightVGProximity Modifier"); } if (wmd->mask_tex_mapping == MOD_DISP_MAP_GLOBAL) dag_add_relation(forest, obNode, obNode, DAG_RL_DATA_DATA | DAG_RL_OB_DATA, "WeightVGProximity Modifier"); }
static void updateDepgraph(ModifierData *md, const ModifierUpdateDepsgraphContext *ctx) { UVProjectModifierData *umd = (UVProjectModifierData *) md; int i; for (i = 0; i < umd->num_projectors; ++i) { if (umd->projectors[i]) { DagNode *curNode = dag_get_node(ctx->forest, umd->projectors[i]); dag_add_relation(ctx->forest, curNode, ctx->obNode, DAG_RL_DATA_DATA | DAG_RL_OB_DATA, "UV Project Modifier"); } } }
static void updateDepgraph(ModifierData *md, DagForest *forest, struct Scene *UNUSED(scene), Object *UNUSED(ob), DagNode *obNode) { ArmatureModifierData *amd = (ArmatureModifierData *) md; if (amd->object) { DagNode *curNode = dag_get_node(forest, amd->object); dag_add_relation(forest, curNode, obNode, DAG_RL_DATA_DATA | DAG_RL_OB_DATA, "Armature Modifier"); } }
static void updateDepgraph(ModifierData *md, DagForest *forest, struct Scene *UNUSED(scene), Object *UNUSED(ob), DagNode *obNode) { LatticeModifierData *lmd = (LatticeModifierData *) md; if (lmd->object) { DagNode *latNode = dag_get_node(forest, lmd->object); dag_add_relation(forest, latNode, obNode, DAG_RL_DATA_DATA | DAG_RL_OB_DATA, "Lattice Modifier"); } }
static void updateDepgraph(ModifierData *md, DagForest *forest, Scene *UNUSED(scene), Object *UNUSED(ob), DagNode *obNode) { CurveModifierData *cmd = (CurveModifierData*) md; if (cmd->object) { DagNode *curNode = dag_get_node(forest, cmd->object); dag_add_relation(forest, curNode, obNode, DAG_RL_DATA_DATA | DAG_RL_OB_DATA, "Curve Modifier"); } }
static void updateDepgraph(ModifierData *md, DagForest *forest, struct Scene *UNUSED(scene), Object *UNUSED(ob), DagNode *obNode) { MeshDeformModifierData *mmd = (MeshDeformModifierData *) md; if (mmd->object) { DagNode *curNode = dag_get_node(forest, mmd->object); dag_add_relation(forest, curNode, obNode, DAG_RL_DATA_DATA | DAG_RL_OB_DATA | DAG_RL_DATA_OB | DAG_RL_OB_OB, "Mesh Deform Modifier"); } }
static void updateDepgraph(ModifierData *md, DagForest *forest, struct Main *UNUSED(bmain), struct Scene *UNUSED(scene), Object *UNUSED(ob), DagNode *obNode) { BooleanModifierData *bmd = (BooleanModifierData *) md; if (bmd->object) { DagNode *curNode = dag_get_node(forest, bmd->object); dag_add_relation(forest, curNode, obNode, DAG_RL_DATA_DATA | DAG_RL_OB_DATA, "Boolean Modifier"); } }
static void updateDepgraph(ModifierData *md, DagForest *forest, struct Scene *UNUSED(scene), Object *UNUSED(ob), DagNode *obNode) { ParticleInstanceModifierData *pimd = (ParticleInstanceModifierData*) md; if (pimd->ob) { DagNode *curNode = dag_get_node(forest, pimd->ob); dag_add_relation(forest, curNode, obNode, DAG_RL_DATA_DATA | DAG_RL_OB_DATA, "Particle Instance Modifier"); } }
static void updateDepgraph(ModifierData *md, DagForest *forest, struct Main *UNUSED(bmain), Scene *UNUSED(scene), Object *UNUSED(ob), DagNode *obNode) { CurveModifierData *cmd = (CurveModifierData *) md; if (cmd->object) { DagNode *curNode = dag_get_node(forest, cmd->object); curNode->eval_flags |= DAG_EVAL_NEED_CURVE_PATH; dag_add_relation(forest, curNode, obNode, DAG_RL_DATA_DATA | DAG_RL_OB_DATA, "Curve Modifier"); } }
static void updateDepgraph(ModifierData *md, DagForest *forest, struct Scene *UNUSED(scene), Object *UNUSED(ob), DagNode *obNode) { MaskModifierData *mmd = (MaskModifierData *)md; if (mmd->ob_arm) { bArmature *arm = (bArmature *)mmd->ob_arm->data; DagNode *armNode = dag_get_node(forest, mmd->ob_arm); /* tag relationship in depsgraph, but also on the armature */ dag_add_relation(forest, armNode, obNode, DAG_RL_DATA_DATA | DAG_RL_OB_DATA, "Mask Modifier"); arm->flag |= ARM_HAS_VIZ_DEPS; } }
static void updateDepgraph(ModifierData *md, DagForest *forest, struct Scene *UNUSED(scene), Object *UNUSED(ob), DagNode *obNode) { HookModifierData *hmd = (HookModifierData*) md; if (hmd->object) { DagNode *curNode = dag_get_node(forest, hmd->object); if (hmd->subtarget[0]) dag_add_relation(forest, curNode, obNode, DAG_RL_OB_DATA|DAG_RL_DATA_DATA, "Hook Modifier"); else dag_add_relation(forest, curNode, obNode, DAG_RL_OB_DATA, "Hook Modifier"); } }
static void updateDepgraph(ModifierData *md, DagForest *forest, struct Main *bmain, struct Scene *scene, Object *ob, DagNode *obNode) { MeshSeqCacheModifierData *mcmd = (MeshSeqCacheModifierData *) md; if (mcmd->cache_file != NULL) { DagNode *curNode = dag_get_node(forest, mcmd->cache_file); dag_add_relation(forest, curNode, obNode, DAG_RL_DATA_DATA | DAG_RL_OB_DATA, "Cache File Modifier"); } UNUSED_VARS(bmain, scene, ob); }
static void updateDepgraph(ModifierData *md, DagForest *forest, struct Scene *UNUSED(scene), Object *UNUSED(ob), DagNode *obNode) { UVProjectModifierData *umd = (UVProjectModifierData *) md; int i; for (i = 0; i < umd->num_projectors; ++i) { if (umd->projectors[i]) { DagNode *curNode = dag_get_node(forest, umd->projectors[i]); dag_add_relation(forest, curNode, obNode, DAG_RL_DATA_DATA | DAG_RL_OB_DATA, "UV Project Modifier"); } } }
static void updateDepgraph(ModifierData *md, DagForest *forest, Scene *scene, Object *ob, DagNode *obNode) { ClothModifierData *clmd = (ClothModifierData *) md; Base *base; if (clmd) { for (base = scene->base.first; base; base = base->next) { Object *ob1 = base->object; if (ob1 != ob) { CollisionModifierData *coll_clmd = (CollisionModifierData *)modifiers_findByType(ob1, eModifierType_Collision); if (coll_clmd) { DagNode *curNode = dag_get_node(forest, ob1); dag_add_relation(forest, curNode, obNode, DAG_RL_DATA_DATA | DAG_RL_OB_DATA, "Cloth Collision"); } } } } }
static void updateDepgraph(ModifierData *md, const ModifierUpdateDepsgraphContext *ctx) { DisplaceModifierData *dmd = (DisplaceModifierData *) md; if (dmd->map_object && dmd->texmapping == MOD_DISP_MAP_OBJECT) { DagNode *curNode = dag_get_node(ctx->forest, dmd->map_object); dag_add_relation(ctx->forest, curNode, ctx->obNode, DAG_RL_DATA_DATA | DAG_RL_OB_DATA, "Displace Modifier"); } if (dmd->texmapping == MOD_DISP_MAP_GLOBAL || (ELEM(dmd->direction, MOD_DISP_DIR_X, MOD_DISP_DIR_Y, MOD_DISP_DIR_Z, MOD_DISP_DIR_RGB_XYZ) && dmd->space == MOD_DISP_SPACE_GLOBAL)) { dag_add_relation(ctx->forest, ctx->obNode, ctx->obNode, DAG_RL_DATA_DATA | DAG_RL_OB_DATA, "Displace Modifier"); } }
static void updateDepgraph(ModifierData *md, DagForest *forest, struct Scene *UNUSED(scene), Object *UNUSED(ob), DagNode *obNode) { DisplaceModifierData *dmd = (DisplaceModifierData *) md; if (dmd->map_object && dmd->texmapping == MOD_DISP_MAP_OBJECT) { DagNode *curNode = dag_get_node(forest, dmd->map_object); dag_add_relation(forest, curNode, obNode, DAG_RL_DATA_DATA | DAG_RL_OB_DATA, "Displace Modifier"); } if (dmd->texmapping == MOD_DISP_MAP_GLOBAL) dag_add_relation(forest, obNode, obNode, DAG_RL_DATA_DATA | DAG_RL_OB_DATA, "Displace Modifier"); }
static void updateDepgraph( ModifierData *md, DagForest *forest, Scene *scene, Object *ob, DagNode *obNode) { FluidsimModifierData *fluidmd= (FluidsimModifierData*) md; Base *base; if (fluidmd && fluidmd->fss) { if (fluidmd->fss->type == OB_FLUIDSIM_DOMAIN) { for (base = scene->base.first; base; base= base->next) { Object *ob1= base->object; if (ob1 != ob) { FluidsimModifierData *fluidmdtmp = (FluidsimModifierData *)modifiers_findByType(ob1, eModifierType_Fluidsim); /* only put dependencies from NON-DOMAIN fluids in here */ if (fluidmdtmp && fluidmdtmp->fss && (fluidmdtmp->fss->type!=OB_FLUIDSIM_DOMAIN)) { DagNode *curNode = dag_get_node(forest, ob1); dag_add_relation(forest, curNode, obNode, DAG_RL_DATA_DATA|DAG_RL_OB_DATA, "Fluidsim Object"); } } } } } }