Blender Git Commit Log

Git Commits -> Revision 3721b85

June 12, 2018, 11:39 (GMT)
GP Branch: Update gpl->actframe in depsgraph callbacks (fixes COW-related issues)

This commit fixes various problems across the codebase
caused by the fact that the gpl->actframe pointers no longer
get updated on redraw, meaning that various editing tools
were not working.

Applying a similar solution to 59a516913e599ce29754d361246a0d8cb92bd314
here: On the exit node for GP data evaluation, we flush the changed
actframe pointers back to main database, so that the main db
is consistent with the displayed time.

Notes:
- For now, we just reuse the BKE_gpencil_eval_geometry() callback,
since it's the only one there and nothing else was happening there.
In future, when we do convert the GP modifier stack evaluation away
from its drawing-engine based approach, we should split this out into
its own function.

- We also do the actframe update in the COW domain here. While it's
not strictly needed for anything right now, this is something that
should really have been happening, so let's do it the proper way now.

- The alternative approach would've been to modify all GP related
context functions to set this whenever they were called. But that
carries performance penalties, and isn't such a nice solution,
as context getters should really not have side-effects.

Commit Details:

Full Hash: 3721b857c697e3b9bc369f3b3afa0a6894e0584b
Parent Commit: d69ac37
Lines Changed: +30, -6

2 Modified Paths:

/source/blender/blenkernel/BKE_gpencil.h (+1, -1) (Diff)
/source/blender/blenkernel/intern/gpencil_modifier.c (+29, -5) (Diff)
By: Miika HämäläinenLast update: Nov-07-2014 14:18MiikaHweb | 2003-2021