Change 20100605-maxcarlson-o by maxcarl...@friendly on 2010-06-05 19:36:35 PDT
    in /Users/maxcarlson/openlaszlo/trunk-clean
    for http://svn.openlaszlo.org/openlaszlo/trunk

Summary: Make animators more efficient when animating the same attribute

Bugs Fixed: LPP-9088 - Make animators more efficient when animating the same 
attribute

Technical Reviewer: ptw
QA Reviewer: hminsky

Details: I'm sending this out so someone else can take a look.  It makes 
animators more efficient when animating the same attribute, but that causes 
some visual artifacts in swf10 - which still uses enterframe events to drive 
the idle queue.  If I switch to using setInterval (kernel/LzIdleKernel) the 
jitteriness goes away but the framerate drops to match that in swf8.  Maybe the 
right thing to do is only do this for swf8/dhtml runtimes, unless folks have 
more ideas.

swf9/Library - Comment out swf9/LzIdleKernel

kernel/Library - Include kernel/LzIdleKernel for all runtimes

LzIdleKernel - Update to compile in as3.

LzAnimatorGroup - Update comments to prevent warnings, Remove unneeded test, 
add ignore arg to __LZhalt() so it can be called from delegates.  destroy() 
shouldn't try to remove itself when the immediateparent is null.

LaszloAnimation - Call __LZhalt() after an idle event to allow the system to 
settle - this prevents extra animators when onstop calls animate().  Add 
counter key to track number of updates per-attribute.  Rename updateCounter() 
-> __setCounter().  Inline setValue() into update().  When more than one 
animation is running on the same attribute, use update counter to only call 
setAttribute() once per cycle.

Tests: Testcase from LPP-9088 performs much better in swf8, dhtml.  Also runs 
in swf10, but animation looks jerky when using enterframe to drive the idle 
queue.

Files:
M       WEB-INF/lps/lfc/kernel/swf9/Library.lzs
M       WEB-INF/lps/lfc/kernel/Library.lzs
M       WEB-INF/lps/lfc/kernel/LzIdleKernel.lzs
M       WEB-INF/lps/lfc/controllers/LzAnimatorGroup.lzs
M       WEB-INF/lps/lfc/controllers/LaszloAnimation.lzs

Changeset: 
http://svn.openlaszlo.org/openlaszlo/patches/20100605-maxcarlson-o.tar

Reply via email to