Blender Git Loki

Blender Git "depsgraph_refactor" branch commits.

Page: 16 / 59

December 18, 2014, 15:33 (GMT)
Depsgraph: Move task callback to the depsgraph_eval file

It's just more a hassle of having separate file and some public-ish
API to pass all the data around. Easier just have single file with
all evaluation.
December 18, 2014, 15:22 (GMT)
Depsgraph: Avoid having one global lock for all the graphs

That's a bit crazy to have single global lock in the .cpp file which
could be easily coupled into Depsgraph structure so it would never
interfere if several threads traverses the graphs.
December 18, 2014, 15:09 (GMT)
Depsgraph: A bit more cleanup

Hopefully it's only me who touches this areas atm.
December 18, 2014, 15:02 (GMT)
Depsgraph: Code cleanup, wrapping and whitespace
December 18, 2014, 14:57 (GMT)
Depsgraph: Fix one more use-after-free issue
December 18, 2014, 14:27 (GMT)
Depsgraph: Move using std::vector to depsgraph_types.h

Such a generic types declarations shouldn't happen inbetween of
declaration of own stuff.
December 18, 2014, 14:26 (GMT)
Depsgraph: Code cleanup
December 18, 2014, 14:09 (GMT)
Depsgraph: Fix order of depsgraph destroying

First need to remove all the nodes and links, then free the root, otherwise it's
possible to access freed data on relations destroy.

This is actually much bigger can of worms i'm afraid, need to make sure no access
to previously freed nodes happens when doing full depsgraph destroy.
December 18, 2014, 14:02 (GMT)
Depsgraph: Correction to previous commit, it's unsafe to cast nodes

We shouldn't cast time source node to operation node and access the flag.
December 18, 2014, 13:51 (GMT)
Depsgraph: Adding/removing modifiers should tag relations for update
December 18, 2014, 13:45 (GMT)
Depsgraph: Fix assert failure in the parents counting

Currently time source is allowed parent for modifiers which depends on time,
so we can not expect parents to be operation nodes.
December 18, 2014, 11:51 (GMT)
Depsgraph: Compilation error fixes for the strict compiler rules
December 18, 2014, 11:17 (GMT)
Depsgraph Debugging: Rudimentary stats for depsgraph

Added a method/operator which prints out how many operations, relations, and outer nodes
we have in the graph at a time. This is mostly useful to check on the complexity of
rig files (e.g. koro from caminandes).
December 18, 2014, 10:22 (GMT)
Code Cleanup: Style + Removing dead code
December 18, 2014, 08:07 (GMT)
Fix: Relationships to time source nodes were getting removed by reachability pruning
December 18, 2014, 06:30 (GMT)
Moved DepsRelations (i.e. inlinks/outlinks lists) back to DepsNode as originally intended

Otherwise, it really doesn't make much sense that we're deriving all these different
node types from DepsNode, when these can't represent relationships between different
nodes. Also, this will be useful for some upcoming new node types for keeping track
of other kinds of dependencies other than what's executable.
December 18, 2014, 04:08 (GMT)
Made debugging identifiers for nodes less "scary" looking
December 18, 2014, 03:55 (GMT)
Fixed logic for verify_entry_exit_ops()

This was assuming that there were relationships between nodes when checking for
inlinks and outlinks. However, since relationships are computed in a later pass,
there are always none, and it ends up nearly always adding unncessary entry/exit
noops (unless there's just a single op in the component).
December 18, 2014, 03:42 (GMT)
Fix: Some of the object transform relations weren't quite right

* For now, we need to connect the parent to the component init, or else
the parent matrix doesn't accumulate correctly for object parenting

* Final transform op wasn't getting hooked in at all
December 18, 2014, 03:25 (GMT)
Object transform evaluation is now done in new-depsgraph-driven callbacks instead of ubereval

* The ubereval is still lurking around for handling proxy cruft

* I've implemented a stripped-down version of the parenting code for
use here (notably, without the slow parenting, and originmat support).
The old/full version did a bit too much for us to be able to keep the
old code running while we worked on the new version too, without making
the code too messy.

Later on, when we work out the geometry handling a bit more, we may need
to replace the parent-matrix finding code it uses too (i.e. to make it
grab data from context instead - especially in cases where it hunts for
this info itself currently).
Tehnyt: Miika HämäläinenViimeksi päivitetty: 07.11.2014 14:18MiikaH:n Sivut a.k.a. MiikaHweb | 2003-2021