Depsgraph: Use depsgraph from handle rather than from scene
This way the code is more decoupled from the way where depsgraph is stored.
This commit is contained in:
@@ -138,7 +138,7 @@ static void updateDepgraph(ModifierData *md, DagForest *forest,
|
||||
|
||||
static void updateDepsgraph(ModifierData *md,
|
||||
struct Main *UNUSED(bmain),
|
||||
struct Scene *scene,
|
||||
struct Scene *UNUSED(scene),
|
||||
Object *UNUSED(ob),
|
||||
struct DepsNodeHandle *node)
|
||||
{
|
||||
@@ -150,8 +150,9 @@ static void updateDepsgraph(ModifierData *md,
|
||||
DEG_add_object_relation(node, amd->end_cap, DEG_OB_COMP_TRANSFORM, "Array Modifier End Cap");
|
||||
}
|
||||
if (amd->curve_ob) {
|
||||
struct Depsgraph *depsgraph = DEG_get_graph_from_handle(node);
|
||||
DEG_add_object_relation(node, amd->curve_ob, DEG_OB_COMP_GEOMETRY, "Array Modifier Curve");
|
||||
DEG_add_special_eval_flag(scene->depsgraph, &amd->curve_ob->id, DAG_EVAL_NEED_CURVE_PATH);
|
||||
DEG_add_special_eval_flag(depsgraph, &amd->curve_ob->id, DAG_EVAL_NEED_CURVE_PATH);
|
||||
}
|
||||
if (amd->offset_ob != NULL) {
|
||||
DEG_add_object_relation(node, amd->offset_ob, DEG_OB_COMP_TRANSFORM, "Array Modifier Offset");
|
||||
|
||||
@@ -111,7 +111,7 @@ static void updateDepgraph(ModifierData *md, DagForest *forest,
|
||||
|
||||
static void updateDepsgraph(ModifierData *md,
|
||||
struct Main *UNUSED(bmain),
|
||||
struct Scene *scene,
|
||||
struct Scene *UNUSED(scene),
|
||||
Object *object,
|
||||
struct DepsNodeHandle *node)
|
||||
{
|
||||
@@ -123,8 +123,9 @@ static void updateDepsgraph(ModifierData *md,
|
||||
/* TODO(sergey): Currently path is evaluated as a part of modifier stack,
|
||||
* might be changed in the future.
|
||||
*/
|
||||
struct Depsgraph *depsgraph = DEG_get_graph_from_handle(node);
|
||||
DEG_add_object_relation(node, cmd->object, DEG_OB_COMP_GEOMETRY, "Curve Modifier");
|
||||
DEG_add_special_eval_flag(scene->depsgraph, &cmd->object->id, DAG_EVAL_NEED_CURVE_PATH);
|
||||
DEG_add_special_eval_flag(depsgraph, &cmd->object->id, DAG_EVAL_NEED_CURVE_PATH);
|
||||
}
|
||||
|
||||
DEG_add_object_relation(node, object, DEG_OB_COMP_TRANSFORM, "Curve Modifier");
|
||||
|
||||
Reference in New Issue
Block a user