skia2/resources/skottie/skottie-text-animator-opacity.json
Florin Malita 1a9e7531e0 [skottie] Fix text opacity animator semantics
The current implementation uses multiplicative composition for opacity
animators (modulate_opacity always scales the new opacity by the old
value).  That means that if one animator drops opacity all the way to
zero, there is no way for subsequent animators to increase opacity.

Instead, AE seems to use the same interpolation as for colors
(prev value/animator value, based on modulation param).

Update to use similar interpolation for opacity properties, and also
to only apply when opacity props are actually specified for a given
animator.

Change-Id: I5a96f9e3722399c8ec661a7843c86dfa60eac5ca
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/499376
Reviewed-by: Jorge Betancourt <jmbetancourt@google.com>
Commit-Queue: Florin Malita <fmalita@google.com>
2022-01-25 17:58:15 +00:00

1 line
5.3 KiB
JSON

{"v":"5.8.1","fr":60,"ip":0,"op":300,"w":500,"h":500,"nm":"opacity semantics","ddd":0,"assets":[],"fonts":{"list":[{"origin":0,"fPath":"","fClass":"","fFamily":"Arial","fWeight":"","fStyle":"Regular","fName":"ArialMT","ascent":75.6476929411292}]},"layers":[{"ddd":0,"ind":1,"ty":5,"nm":"1","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[120,160,0],"ix":2,"l":2},"a":{"a":0,"k":[0,0,0],"ix":1,"l":2},"s":{"a":0,"k":[100,100,100],"ix":6,"l":2}},"ao":0,"t":{"d":{"k":[{"s":{"sz":[246,132],"ps":[-118,-111],"s":28,"f":"ArialMT","t":"The quick brown fox jumps over the lazy dog.","ca":0,"j":2,"tr":-100,"lh":33.6000022888184,"ls":0,"fc":[0,0.971,0.039]},"t":0}]},"p":{},"m":{"g":1,"a":{"a":0,"k":[0,0],"ix":2}},"a":[{"nm":"zero","s":{"t":0,"xe":{"a":0,"k":0,"ix":7},"ne":{"a":0,"k":0,"ix":8},"a":{"a":0,"k":100,"ix":4},"b":3,"rn":0,"sh":1,"sm":{"a":0,"k":100,"ix":6},"r":1},"a":{"o":{"a":0,"k":0,"ix":9}}},{"nm":"full","s":{"t":0,"xe":{"a":0,"k":0,"ix":7},"ne":{"a":0,"k":0,"ix":8},"a":{"a":0,"k":100,"ix":4},"b":3,"rn":0,"sh":1,"sm":{"a":0,"k":100,"ix":6},"o":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":0,"s":[-100]},{"t":299,"s":[100]}],"ix":3},"r":1},"a":{"o":{"a":0,"k":100,"ix":9}}}]},"ip":0,"op":300,"st":0,"bm":0},{"ddd":0,"ind":2,"ty":5,"nm":"2","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[120,400,0],"ix":2,"l":2},"a":{"a":0,"k":[0,0,0],"ix":1,"l":2},"s":{"a":0,"k":[100,100,100],"ix":6,"l":2}},"ao":0,"t":{"d":{"k":[{"s":{"sz":[246,132],"ps":[-118,-111],"s":28,"f":"ArialMT","t":"The quick brown fox jumps over the lazy dog.","ca":0,"j":2,"tr":-100,"lh":33.6000022888184,"ls":0,"fc":[0,0.971,0.039]},"t":0}]},"p":{},"m":{"g":1,"a":{"a":0,"k":[0,0],"ix":2}},"a":[{"nm":"full","s":{"t":0,"xe":{"a":0,"k":0,"ix":7},"ne":{"a":0,"k":0,"ix":8},"a":{"a":0,"k":100,"ix":4},"b":1,"rn":0,"sh":1,"sm":{"a":0,"k":100,"ix":6},"r":1},"a":{"o":{"a":0,"k":100,"ix":9}}},{"nm":"zero","s":{"t":0,"xe":{"a":0,"k":0,"ix":7},"ne":{"a":0,"k":0,"ix":8},"a":{"a":0,"k":100,"ix":4},"b":3,"rn":0,"sh":1,"sm":{"a":0,"k":100,"ix":6},"o":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":0,"s":[-100]},{"t":299,"s":[100]}],"ix":3},"r":1},"a":{"o":{"a":0,"k":0,"ix":9}}}]},"ip":0,"op":300,"st":0,"bm":0},{"ddd":0,"ind":3,"ty":5,"nm":"3","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[370,160,0],"ix":2,"l":2},"a":{"a":0,"k":[0,0,0],"ix":1,"l":2},"s":{"a":0,"k":[100,100,100],"ix":6,"l":2}},"ao":0,"t":{"d":{"k":[{"s":{"sz":[246,132],"ps":[-118,-111],"s":28,"f":"ArialMT","t":"The quick brown fox jumps over the lazy dog.","ca":0,"j":2,"tr":-100,"lh":33.6000022888184,"ls":0,"fc":[0,0.971,0.039]},"t":0}]},"p":{},"m":{"g":1,"a":{"a":0,"k":[0,0],"ix":2}},"a":[{"nm":"zero","s":{"t":0,"xe":{"a":0,"k":0,"ix":7},"ne":{"a":0,"k":0,"ix":8},"a":{"a":0,"k":100,"ix":4},"b":3,"rn":0,"sh":1,"sm":{"a":0,"k":100,"ix":6},"r":1},"a":{"o":{"a":0,"k":0,"ix":9}}},{"nm":"full","s":{"t":0,"xe":{"a":0,"k":0,"ix":7},"ne":{"a":0,"k":0,"ix":8},"a":{"a":0,"k":100,"ix":4},"b":3,"rn":0,"sh":1,"sm":{"a":0,"k":100,"ix":6},"o":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":0,"s":[-100]},{"t":299,"s":[100]}],"ix":3},"r":1},"a":{"o":{"a":0,"k":100,"ix":9}}},{"nm":"Animator 1","s":{"t":0,"xe":{"a":0,"k":0,"ix":7},"ne":{"a":0,"k":0,"ix":8},"a":{"a":0,"k":100,"ix":4},"b":3,"rn":0,"sh":1,"sm":{"a":0,"k":100,"ix":6},"o":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":0,"s":[-100]},{"t":299,"s":[100]}],"ix":3},"r":1},"a":{"p":{"a":0,"k":[0,-20,0],"ix":2}}}]},"ip":0,"op":300,"st":0,"bm":0},{"ddd":0,"ind":4,"ty":5,"nm":"4","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[370,400,0],"ix":2,"l":2},"a":{"a":0,"k":[0,0,0],"ix":1,"l":2},"s":{"a":0,"k":[100,100,100],"ix":6,"l":2}},"ao":0,"t":{"d":{"k":[{"s":{"sz":[246,132],"ps":[-118,-111],"s":28,"f":"ArialMT","t":"The quick brown fox jumps over the lazy dog.","ca":0,"j":2,"tr":-100,"lh":33.6000022888184,"ls":0,"fc":[0,0.971,0.039]},"t":0}]},"p":{},"m":{"g":1,"a":{"a":0,"k":[0,0],"ix":2}},"a":[{"nm":"full","s":{"t":0,"xe":{"a":0,"k":0,"ix":7},"ne":{"a":0,"k":0,"ix":8},"a":{"a":0,"k":100,"ix":4},"b":1,"rn":0,"sh":1,"sm":{"a":0,"k":100,"ix":6},"r":1},"a":{"o":{"a":0,"k":100,"ix":9}}},{"nm":"zero","s":{"t":0,"xe":{"a":0,"k":0,"ix":7},"ne":{"a":0,"k":0,"ix":8},"a":{"a":0,"k":100,"ix":4},"b":3,"rn":0,"sh":1,"sm":{"a":0,"k":100,"ix":6},"o":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":0,"s":[-100]},{"t":299,"s":[100]}],"ix":3},"r":1},"a":{"o":{"a":0,"k":0,"ix":9}}},{"nm":"Animator 1","s":{"t":0,"xe":{"a":0,"k":0,"ix":7},"ne":{"a":0,"k":0,"ix":8},"a":{"a":0,"k":100,"ix":4},"b":3,"rn":0,"sh":1,"sm":{"a":0,"k":100,"ix":6},"o":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":0,"s":[-100]},{"t":299,"s":[100]}],"ix":3},"r":1},"a":{"p":{"a":0,"k":[0,-20,0],"ix":2}}}]},"ip":0,"op":300,"st":0,"bm":0},{"ddd":0,"ind":5,"ty":1,"nm":"Black Solid 1","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[250,250,0],"ix":2,"l":2},"a":{"a":0,"k":[250,250,0],"ix":1,"l":2},"s":{"a":0,"k":[100,100,100],"ix":6,"l":2}},"ao":0,"sw":500,"sh":500,"sc":"#000000","ip":0,"op":300,"st":0,"bm":0}],"markers":[]}