866e262a21
Two issues: 1) Empirically (per AE's model), only solid layers transform the effect space. All other layer types implement their effects ignoring the layer xform. 2) Due to the effect deferral mechanism in sksg, shader effects are sometimes applied with a different transform than intended. To address #1, tweak the layer builder logic to attach the effects before/after the transform node, depending on the layer type. For #2, track the CTM active when the shader effect is attached and undo any intervening transformations via a local matrix when the shader is actually applied to SkPaint. Change-Id: I29b5a4df3b223e7da9dfc36b0d7d40055d192ac0 Reviewed-on: https://skia-review.googlesource.com/c/skia/+/205922 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Florin Malita <fmalita@chromium.org> |
||
---|---|---|
.. | ||
SkSGClipEffect.h | ||
SkSGColorFilter.h | ||
SkSGDraw.h | ||
SkSGEffectNode.h | ||
SkSGGeometryNode.h | ||
SkSGGeometryTransform.h | ||
SkSGGradient.h | ||
SkSGGroup.h | ||
SkSGImage.h | ||
SkSGInvalidationController.h | ||
SkSGMaskEffect.h | ||
SkSGMerge.h | ||
SkSGNode.h | ||
SkSGOpacityEffect.h | ||
SkSGPaint.h | ||
SkSGPath.h | ||
SkSGPlane.h | ||
SkSGRect.h | ||
SkSGRenderEffect.h | ||
SkSGRenderNode.h | ||
SkSGRoundEffect.h | ||
SkSGScene.h | ||
SkSGText.h | ||
SkSGTransform.h | ||
SkSGTrimEffect.h |