Depsgraph: Fix wrong layers flush form children to parent
authorSergey Sharybin <sergey.vfx@gmail.com>
Mon, 30 May 2016 10:32:38 +0000 (12:32 +0200)
committerSergey Sharybin <sergey.vfx@gmail.com>
Mon, 30 May 2016 10:35:03 +0000 (12:35 +0200)
commit673fabbb64092f8a3fd5bf87f4b3ce0e80760aa5
tree333ef4f2a477735e19130337801bdc0b35868b09
parent4aaf7b0c7a65473b4d1356fb36ba24eb2df4be49
Depsgraph: Fix wrong layers flush form children to parent

It was possible to have issues in cases when several child dependencies
goes to IDs with different layers. In this case order of flushing was not
really well defined, which could lead to cases when indirect dependency
via invisible object wouldn't work.

Need some sort of barrier to prevent scheduling of parent nodes for until
all children are done, but that's becoming quite nasty thing to implement.

Added a temp field to component for now. maybe it's not so crazy actually
and we might use it for evaluation as well, so we wouldn't flush updates
to components which does not affect visible stuff.
intern/cycles/blender/blender_curves.cpp
source/blender/depsgraph/intern/builder/deg_builder.cc
source/blender/depsgraph/intern/nodes/deg_node_component.cc
source/blender/depsgraph/intern/nodes/deg_node_component.h