diff options
author | Sergey Sharybin <sergey.vfx@gmail.com> | 2019-02-01 12:42:50 +0300 |
---|---|---|
committer | Sergey Sharybin <sergey.vfx@gmail.com> | 2019-02-01 17:40:19 +0300 |
commit | c1cf4c29da23d27bf81746ae0e000e10d4d3147a (patch) | |
tree | 6a1b539c321accac70464d7d723ef3abdc8235a4 /source/blender/depsgraph | |
parent | a86001c56a30fa436bdf30710d232532971aa90e (diff) |
Depsgraph: Use operation code for geometry evaluation done
Diffstat (limited to 'source/blender/depsgraph')
4 files changed, 12 insertions, 7 deletions
diff --git a/source/blender/depsgraph/intern/builder/deg_builder_nodes.cc b/source/blender/depsgraph/intern/builder/deg_builder_nodes.cc index 8b29ebcd89b..408b21a7fb9 100644 --- a/source/blender/depsgraph/intern/builder/deg_builder_nodes.cc +++ b/source/blender/depsgraph/intern/builder/deg_builder_nodes.cc @@ -1387,8 +1387,10 @@ void DepsgraphNodeBuilder::build_object_data_geometry_datablock( BLI_assert(!"Should not happen"); break; } - op_node = add_operation_node(obdata, NodeType::GEOMETRY, NULL, - OperationCode::PLACEHOLDER, "Eval Done"); + op_node = add_operation_node(obdata, + NodeType::GEOMETRY, + NULL, + OperationCode::GEOMETRY_EVAL_DONE); op_node->set_as_exit(); /* Parameters for driver sources. */ add_operation_node(obdata, diff --git a/source/blender/depsgraph/intern/builder/deg_builder_relations.cc b/source/blender/depsgraph/intern/builder/deg_builder_relations.cc index cb5c8111c08..ac827d8272a 100644 --- a/source/blender/depsgraph/intern/builder/deg_builder_relations.cc +++ b/source/blender/depsgraph/intern/builder/deg_builder_relations.cc @@ -2122,11 +2122,10 @@ void DepsgraphRelationBuilder::build_object_data_geometry_datablock(ID *obdata) } /* Link object data evaluation node to exit operation. */ OperationKey obdata_geom_eval_key( - obdata, NodeType::GEOMETRY, OperationCode::PLACEHOLDER); + obdata, NodeType::GEOMETRY, OperationCode::GEOMETRY_EVAL); OperationKey obdata_geom_done_key(obdata, - NodeType::GEOMETRY, - OperationCode::PLACEHOLDER, - "Eval Done"); + NodeType::GEOMETRY, + OperationCode::GEOMETRY_EVAL_DONE); add_relation(obdata_geom_eval_key, obdata_geom_done_key, "ObData Geom Eval Done"); diff --git a/source/blender/depsgraph/intern/node/deg_node_operation.cc b/source/blender/depsgraph/intern/node/deg_node_operation.cc index 90044519596..72256e35ea8 100644 --- a/source/blender/depsgraph/intern/node/deg_node_operation.cc +++ b/source/blender/depsgraph/intern/node/deg_node_operation.cc @@ -66,6 +66,7 @@ const char *operationCodeAsString(OperationCode opcode) /* Geometry. */ case OperationCode::GEOMETRY_EVAL_INIT: return "GEOMETRY_EVAL_INIT"; case OperationCode::GEOMETRY_EVAL: return "GEOMETRY_EVAL"; + case OperationCode::GEOMETRY_EVAL_DONE: return "GEOMETRY_EVAL_DONE"; case OperationCode::GEOMETRY_SHAPEKEY: return "GEOMETRY_SHAPEKEY"; /* Object data. */ case OperationCode::LIGHT_PROBE_EVAL: return "LIGHT_PROBE_EVAL"; diff --git a/source/blender/depsgraph/intern/node/deg_node_operation.h b/source/blender/depsgraph/intern/node/deg_node_operation.h index 3cb49ccebfe..30818c20d69 100644 --- a/source/blender/depsgraph/intern/node/deg_node_operation.h +++ b/source/blender/depsgraph/intern/node/deg_node_operation.h @@ -89,7 +89,10 @@ enum class OperationCode { GEOMETRY_EVAL_INIT, /* Evaluate the whole geometry, including modifiers. */ GEOMETRY_EVAL, - /* Evaluation of a shape key. */ + /* Evaluation of geometry is completely done.. */ + GEOMETRY_EVAL_DONE, + /* Evaluation of a shape key. + * NOTE: Currently only for object data datablocks. */ GEOMETRY_SHAPEKEY, /* Object data. --------------------------------------------------------- */ |