Blender Git Commit Log
Git Commits -> Revision cea6706
Revision cea6706 by Sergey Sharybin (master) January 8, 2020, 13:38 (GMT) |
Fix T62311: Metaball animation playback crash This commit restores old metaball workaround which was forcing their update from a single thread. The root of the issue comes to the fact that metaball evaluation needs to access metaballs from duplilists, so they are properly polygonized with corresponding motherball which is outside of duplilist. In a more ideal world this will be implemented in a way that will not require iterating over all duplilists, but only through the ones which actually contain metaballs for the given motherball. In practice this ends up in a huge refactor in both relations builder (which meeds to see whether there are metaballs in duplilists without actually creating duplilist as it can not be done prior scene is evaluated) and in metaballs area which need to use new relations information. Additionally, metaball evaluation must become thread-safe, which is currently not a case with dupli-object matrices. There might be issues deeper in polygonization code which I am not aware of. Having this forced single-thread evaluation is same as Blender 2.79 was doing. Think it's better to have slower but simpler solution than to invest time in refactoring area which requires deeper design changes. Reviewed By: dfelinto Differential Revision: https://developer.blender.org/D6539 |
Commit Details:
Full Hash: cea67064da5fccbd400ee0c9437c9355289beab8
Parent Commit: 75f82d2
Lines Changed: +120, -25
1 Modified Path:
/source/blender/depsgraph/intern/eval/deg_eval.cc (+120, -25) (Diff)