Blender Git Commits

Blender Git "depsgraph_refactor" branch commits.

Page: 32 / 59

March 24, 2014, 15:54 (GMT)
Implemented external build functions for adding relations.

Note: these use STANDARD DepsRelation types for now. Probably types for
relations are redundant anyway and can be removed later.
March 24, 2014, 15:35 (GMT)
Stub implementations for external depsgraph build functions.
March 22, 2014, 17:25 (GMT)
Test implementation of modifier updateDepsgraph callback in the
shrinkwrap modifier.
March 22, 2014, 09:57 (GMT)
Some function declarations which can be used outside the depsgraph code
to define relations.
March 21, 2014, 19:34 (GMT)
Basic callback in ModifierTypeInfo for registering dependencies in the
new depsgraph.

For now this lives alongside the old callback until porting is complete
and the old callback can be removed.

The modifier cb uses a DepsNodeHandle symbolic type for representing the
current modifier node itself, so it doesn't get into conflict with the
actual DepsNode class. This will also incorporate a pointer to Depsgraph
and possibly other state info internally, so only a single handle
argument is needed.
March 21, 2014, 18:21 (GMT)
Made a new public header DEG_depsgraph_build.

This will contain all necessary API for _building_ the depsgraph, such
as the main scene->depsgraph update functions and specialized functions
e.g. for modifier dependencies.
March 21, 2014, 17:49 (GMT)
Moved graphviz debugging code into a new file depsgraph_debug.cpp to
keep the query API file clean.
March 21, 2014, 17:14 (GMT)
Removed leftover next/prev pointers from disused ListBase.
March 21, 2014, 17:12 (GMT)
Removed copy function for relations.

This was not used, and it doesn't make much sense because one would
have to manually modify a copy after creating it, avoiding all the
pitfalls. Relations should just be deleted and replaced by creating a
new relation instead.
March 21, 2014, 17:09 (GMT)
Some fixes and cleanup to allocating and freeing DepsRelations.

(Un-)Registering of relations in node inlinks/outlinks now happens in
constructor/destructor. Eventually it may be preferable to manage
relations in a central mempool in the Depsgraph instead of using shared
ownership in both from and to node.
March 21, 2014, 08:03 (GMT)
Graphviz debug: Enable edges between cluster nodes, but using invisible
dummy nodes and ltail/lhead attributes.
March 20, 2014, 16:55 (GMT)
Cleanup: removed unused typeinfo callback pointers.
March 20, 2014, 16:54 (GMT)
Replaced last 2 remaining callbacks in DepsNodeFactory by virtual
DespNode methods.
March 20, 2014, 16:46 (GMT)
Renamed DepsNodeTypeInfo to DepsNodeFactory.

This implements a common pattern, so using the standard naming is
preferable. Also DepsNode has another internal type called TypeInfo now,
best avoid confusion here.
March 20, 2014, 16:39 (GMT)
Removed unused old typeinfo code.
March 20, 2014, 16:00 (GMT)
Replaced remaining ListBases in Depsgraph with appropriate C++ containers.
March 20, 2014, 15:39 (GMT)
Removed the redundant ops ListBase from ComponentDepsNode, one container
for operations is enough.
March 20, 2014, 15:27 (GMT)
Disabled unused ListBase code in IDDepsNode.

ListBase is dangerous for virtual C++ classes, because by storing the
plain void* the vtable info is lost!
March 20, 2014, 13:39 (GMT)
Replaced inlinks/outlinks ListBase in DepsNode by unordered_set.
March 20, 2014, 13:39 (GMT)
Constructor/Destructor for DepsRelation.
By: Miika HämäläinenLast update: Nov-07-2014 14:18MiikaHweb | 2003-2021