Commit: 357f1e74f768f03914ad7236fbba2ee83bdeb807
Author: Joshua Leung
Date: Mon Dec 29 15:18:41 2014 +1300
Branches: depsgraph_refactor
https://developer.blender.org/rB357f1e74f768f03914ad7236fbba2ee83bdeb807
Temporary placeholder solution for getting dependencies on geometry working
again
The real solution here is to ensure that we have the proper/intended entry/exit
ops
(with the corresponding opcodes) included in the graph
===================================================================
M source/blender/depsgraph/intern/depsgraph_build.cpp
===================================================================
diff --git a/source/blender/depsgraph/intern/depsgraph_build.cpp
b/source/blender/depsgraph/intern/depsgraph_build.cpp
index d4da393..24ca414 100644
--- a/source/blender/depsgraph/intern/depsgraph_build.cpp
+++ b/source/blender/depsgraph/intern/depsgraph_build.cpp
@@ -281,6 +281,11 @@ void
DepsgraphNodeBuilder::verify_entry_exit_operations(ComponentDepsNode *node)
else if (source_ops.size() > 1) {
/* multiple unlinked op, add a barrier node as a single entry
point */
// XXX: problematic for drivers
+ node->entry_operation = add_operation_node(node,
DEPSOP_TYPE_INIT, NULL, DEG_OPCODE_NOOP, "Entry");
+ for (OperationsVector::const_iterator it = source_ops.begin();
it != source_ops.end(); ++it) {
+ OperationDepsNode *op_node = *it;
+ m_graph->add_new_relation(node->entry_operation,
op_node, DEPSREL_TYPE_OPERATION, "Component entry relation");
+ }
}
if (exit_ops.size() == 1) {
@@ -302,6 +307,11 @@ void
DepsgraphNodeBuilder::verify_entry_exit_operations(ComponentDepsNode *node)
else if (sink_ops.size() > 1) {
/* multiple unlinked ops, add a barrier node as a single exit
point */
// XXX: problematic for drivers
+ node->exit_operation = add_operation_node(node,
DEPSOP_TYPE_OUT, NULL, DEG_OPCODE_NOOP, "Exit");
+ for (OperationsVector::const_iterator it = sink_ops.begin(); it
!= sink_ops.end(); ++it) {
+ OperationDepsNode *op_node = *it;
+ m_graph->add_new_relation(op_node,
node->exit_operation, DEPSREL_TYPE_OPERATION, "Component exit relation");
+ }
}
BLI_assert(node->operations.size() == 0 || node->entry_operation !=
NULL);
_______________________________________________
Bf-blender-cvs mailing list
[email protected]
http://lists.blender.org/mailman/listinfo/bf-blender-cvs