Fix missing relation in new DEG between World and its NodeTree.

Was preventing update in 3DView etc. when changing something in the
World's NodeTree, especially annoying in blender2.8 branch (since legacy
depsgraph has been removed there), but also affecting master.
This commit is contained in:
Bastien Montagne 2017-05-10 10:31:33 +02:00
parent 8246246bda
commit 42c346028f
2 changed files with 12 additions and 5 deletions

View File

@ -653,12 +653,13 @@ void DepsgraphNodeBuilder::build_world(World *world)
return;
}
/* world itself */
add_id_node(world_id); /* world shading/params? */
build_animdata(world_id);
/* TODO: other settings? */
/* world itself */
add_component_node(world_id, DEPSNODE_TYPE_PARAMETERS);
add_operation_node(world_id, DEPSNODE_TYPE_PARAMETERS, DEPSOP_TYPE_EXEC, NULL,
DEG_OPCODE_PLACEHOLDER, "Parameters Eval");
/* textures */
build_texture_stack(world->mtex);

View File

@ -1129,7 +1129,13 @@ void DepsgraphRelationBuilder::build_world(World *world)
build_texture_stack(world->mtex);
/* world's nodetree */
build_nodetree(world->nodetree);
if (world->nodetree != NULL) {
build_nodetree(world->nodetree);
ComponentKey ntree_key(&world->nodetree->id, DEPSNODE_TYPE_PARAMETERS);
ComponentKey world_key(world_id, DEPSNODE_TYPE_PARAMETERS);
add_relation(ntree_key, world_key,
DEPSREL_TYPE_COMPONENT_ORDER, "NTree->World Parameters");
}
}
void DepsgraphRelationBuilder::build_rigidbody(Scene *scene)