Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSergey Sharybin <sergey.vfx@gmail.com>2018-09-14 13:53:35 +0300
committerSergey Sharybin <sergey.vfx@gmail.com>2018-09-14 15:43:56 +0300
commit06c0febe7094a5caee731edebde300f5dabf2d8c (patch)
tree1f858326540e52f4e21b2509a5f24371b17baf01 /source/blender
parent8e8952b7e363b878cfc97440c1d2254dffbaf840 (diff)
Depsgraph: Use explicit argument values
Diffstat (limited to 'source/blender')
-rw-r--r--source/blender/depsgraph/intern/builder/deg_builder_nodes.cc36
-rw-r--r--source/blender/depsgraph/intern/builder/deg_builder_nodes.h2
-rw-r--r--source/blender/depsgraph/intern/builder/deg_builder_nodes_rig.cc3
-rw-r--r--source/blender/depsgraph/intern/builder/deg_builder_nodes_view_layer.cc2
4 files changed, 29 insertions, 14 deletions
diff --git a/source/blender/depsgraph/intern/builder/deg_builder_nodes.cc b/source/blender/depsgraph/intern/builder/deg_builder_nodes.cc
index 63ea9c0da3f..d39371db299 100644
--- a/source/blender/depsgraph/intern/builder/deg_builder_nodes.cc
+++ b/source/blender/depsgraph/intern/builder/deg_builder_nodes.cc
@@ -412,7 +412,8 @@ void DepsgraphNodeBuilder::build_id(ID *id)
build_collection((Collection *)id);
break;
case ID_OB:
- build_object(-1, (Object *)id, DEG_ID_LINKED_INDIRECTLY);
+ /* TODO(sergey): Get visibility from a "parent" somehow. */
+ build_object(-1, (Object *)id, DEG_ID_LINKED_INDIRECTLY, true);
break;
case ID_KE:
build_shapekeys((Key *)id);
@@ -532,7 +533,8 @@ void DepsgraphNodeBuilder::build_object(int base_index,
build_object_transform(object);
/* Parent. */
if (object->parent != NULL) {
- build_object(-1, object->parent, DEG_ID_LINKED_INDIRECTLY);
+ /* TODO(sergey): Use own visibility. */
+ build_object(-1, object->parent, DEG_ID_LINKED_INDIRECTLY, true);
}
/* Modifiers. */
if (object->modifiers.first != NULL) {
@@ -578,10 +580,12 @@ void DepsgraphNodeBuilder::build_object(int base_index,
}
/* Proxy object to copy from. */
if (object->proxy_from != NULL) {
- build_object(-1, object->proxy_from, DEG_ID_LINKED_INDIRECTLY);
+ /* TODO(sergey): Use own visibility. */
+ build_object(-1, object->proxy_from, DEG_ID_LINKED_INDIRECTLY, true);
}
if (object->proxy_group != NULL) {
- build_object(-1, object->proxy_group, DEG_ID_LINKED_INDIRECTLY);
+ /* TODO(sergey): Use own visibility. */
+ build_object(-1, object->proxy_group, DEG_ID_LINKED_INDIRECTLY, true);
}
/* Object dupligroup. */
if (object->dup_group != NULL) {
@@ -1049,9 +1053,11 @@ void DepsgraphNodeBuilder::build_particles(Object *object)
switch (part->ren_as) {
case PART_DRAW_OB:
if (part->dup_ob != NULL) {
+ /* TODO(sergey): Use own visibility. */
build_object(-1,
part->dup_ob,
- DEG_ID_LINKED_INDIRECTLY);
+ DEG_ID_LINKED_INDIRECTLY,
+ true);
}
break;
case PART_DRAW_GR:
@@ -1230,13 +1236,16 @@ void DepsgraphNodeBuilder::build_object_data_geometry_datablock(ID *obdata)
*/
Curve *cu = (Curve *)obdata;
if (cu->bevobj != NULL) {
- build_object(-1, cu->bevobj, DEG_ID_LINKED_INDIRECTLY);
+ /* TODO(sergey): Use own visibility. */
+ build_object(-1, cu->bevobj, DEG_ID_LINKED_INDIRECTLY, true);
}
if (cu->taperobj != NULL) {
- build_object(-1, cu->taperobj, DEG_ID_LINKED_INDIRECTLY);
+ /* TODO(sergey): Use own visibility. */
+ build_object(-1, cu->taperobj, DEG_ID_LINKED_INDIRECTLY, true);
}
if (cu->textoncurve != NULL) {
- build_object(-1, cu->textoncurve, DEG_ID_LINKED_INDIRECTLY);
+ /* TODO(sergey): Use own visibility. */
+ build_object(-1, cu->textoncurve, DEG_ID_LINKED_INDIRECTLY, true);
}
break;
}
@@ -1376,7 +1385,8 @@ void DepsgraphNodeBuilder::build_nodetree(bNodeTree *ntree)
build_image((Image *)id);
}
else if (id_type == ID_OB) {
- build_object(-1, (Object *)id, DEG_ID_LINKED_INDIRECTLY);
+ /* TODO(sergey): Use visibility of owner of the node tree. */
+ build_object(-1, (Object *)id, DEG_ID_LINKED_INDIRECTLY, true);
}
else if (id_type == ID_SCE) {
/* Scenes are used by compositor trees, and handled by render
@@ -1585,9 +1595,11 @@ void DepsgraphNodeBuilder::modifier_walk(void *user_data,
}
switch (GS(id->name)) {
case ID_OB:
+ /* TODO(sergey): Use visibility of owner of modifier stack. */
data->builder->build_object(-1,
(Object *)id,
- DEG_ID_LINKED_INDIRECTLY);
+ DEG_ID_LINKED_INDIRECTLY,
+ true);
break;
case ID_TE:
data->builder->build_texture((Tex *)id);
@@ -1610,9 +1622,11 @@ void DepsgraphNodeBuilder::constraint_walk(bConstraint * /*con*/,
}
switch (GS(id->name)) {
case ID_OB:
+ /* TODO(sergey): Use visibility of owner of modifier stack. */
data->builder->build_object(-1,
(Object *)id,
- DEG_ID_LINKED_INDIRECTLY);
+ DEG_ID_LINKED_INDIRECTLY,
+ true);
break;
default:
/* pass */
diff --git a/source/blender/depsgraph/intern/builder/deg_builder_nodes.h b/source/blender/depsgraph/intern/builder/deg_builder_nodes.h
index fcceec99b06..5c9ddde8c5a 100644
--- a/source/blender/depsgraph/intern/builder/deg_builder_nodes.h
+++ b/source/blender/depsgraph/intern/builder/deg_builder_nodes.h
@@ -167,7 +167,7 @@ struct DepsgraphNodeBuilder {
void build_object(int base_index,
Object *object,
eDepsNode_LinkedState_Type linked_state,
- bool is_visible = true);
+ bool is_visible);
void build_object_flags(int base_index,
Object *object,
eDepsNode_LinkedState_Type linked_state);
diff --git a/source/blender/depsgraph/intern/builder/deg_builder_nodes_rig.cc b/source/blender/depsgraph/intern/builder/deg_builder_nodes_rig.cc
index b1486e82af5..2853c96ef9d 100644
--- a/source/blender/depsgraph/intern/builder/deg_builder_nodes_rig.cc
+++ b/source/blender/depsgraph/intern/builder/deg_builder_nodes_rig.cc
@@ -292,7 +292,8 @@ void DepsgraphNodeBuilder::build_rig(Object *object)
}
/* Custom shape. */
if (pchan->custom != NULL) {
- build_object(-1, pchan->custom, DEG_ID_LINKED_INDIRECTLY);
+ /* TODO(sergey): Use own visibility. */
+ build_object(-1, pchan->custom, DEG_ID_LINKED_INDIRECTLY, true);
}
pchan_index++;
}
diff --git a/source/blender/depsgraph/intern/builder/deg_builder_nodes_view_layer.cc b/source/blender/depsgraph/intern/builder/deg_builder_nodes_view_layer.cc
index 409df45de27..5efa427fcdb 100644
--- a/source/blender/depsgraph/intern/builder/deg_builder_nodes_view_layer.cc
+++ b/source/blender/depsgraph/intern/builder/deg_builder_nodes_view_layer.cc
@@ -115,7 +115,7 @@ void DepsgraphNodeBuilder::build_view_layer(
}
build_layer_collections(&view_layer->layer_collections);
if (scene->camera != NULL) {
- build_object(-1, scene->camera, DEG_ID_LINKED_INDIRECTLY);
+ build_object(-1, scene->camera, DEG_ID_LINKED_INDIRECTLY, true);
}
/* Rigidbody. */
if (scene->rigidbody_world != NULL) {