skia2/modules/sksg
Florin Malita 0f11e115d7 [skottie] Fix motion blur asserts
MotionBlurEffect makes use of many abilities some consider to be
unnatural.  Notably, it mutates the state of its subtree at render time
(gasp) to sample various time points.

Mutation triggers scene graph invalidation, which bubbles up the
ancestor chain.  While we immediately revalidate the subtree, we
cannot do the same for ancestors (no full scene knowledge).  This means
post-rendering, we leave some SG nodes dirty - which triggers various
debug asserts).

The easiest fix is to temporarily suppress invalidation bubbling at the
MotionBlurEffect node level (this is safe, because we always revalidate
the subtree).

Also add a post-render assert for tighter state validation.

Change-Id: I376b7a8880f71d85e595c419334b42bc4720ac65
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/243420
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Florin Malita <fmalita@chromium.org>
2019-09-23 17:34:42 +00:00
..
include Revert "add guard to switch to SkPathTypes" 2019-09-14 19:13:44 +00:00
samples [skottie] Expose SG inval controller on seek() 2019-07-22 16:33:15 +00:00
src [skottie] Fix motion blur asserts 2019-09-23 17:34:42 +00:00
tests [sksg] Fix setVisible() invalidation 2019-07-23 14:16:39 +00:00
BUILD.gn GN: split out skia_*_public from skia_*_sources 2019-03-15 18:29:19 +00:00
sksg.gni [skottie] Caching motion tile 2019-07-10 19:13:41 +00:00