swftools-common
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Swftools-common] .change problems & blendMode="5" frame skipping


From: flash dev
Subject: [Swftools-common] .change problems & blendMode="5" frame skipping
Date: Sun, 19 Aug 2007 18:07:19 +0100

CODE:

----- circle.sc

.flash filename="circle.swf" fps=30
    .gradient orbg radial r=100:
       50% blue
       100% white
    .end
    .circle orb r=100 line=0 fill=orbg
    .put orb pin=center x=0 y=0

    .frame 1
       .jump orb scale=100%
    .frame 4
       .change orb scale=85%
    .frame 6
       .change orb scale=95%
.end

-----

PROBLEMS:

1.  Scale doesn't change as I'd expect

It seems that .change is being calculated with (n-1) frames rather than (n) frames.  Or are my expectations incorrect?

frame    expected    observed
1:        100%        100%
2:        95%            92.5%
3:        90%            85%
4:        85%            85%
5:        90%            85%
6:        95%            95%

I used swfmill's swf2xml command to inspect the " circle.swf" file and obtain these values.  

2.  Frame skipping and blendMode="5"

Playing back "circle.swf" inside FP9 works fine.  But as soon as I add the movie as a library resource inside my project and instantiate an instance as a movieclip, it skips frames when rendering under FP9.  (Under FP6, frames are ALWAYS skipped whether I play " circle.swf" or the project's movie.)  I tried changing the version number to 6/7/8/9 and nothing changed.  The frame rates are the same in the main movie as in "circle.swf".

I made a new test movie " circlej.swf" that used .jump instead of .change, using the values I expected.  It played back fine.  I used swfmill's swf2xml command and compared xml of "circlej.swf" to the xml of the original "circle.swf ".  In the swf2xml output of "circle.swf", I noticed that SOME (but not all!) of the frames were marked blendMode="5".  It was precisely these frames that were being skipped by the player.  I changed the PlaceObject3 tag into a PlaceObject2 tag by deleting the blendMode="5" attribute.  I used the xml2swf command to produce a new movie, and that movie played back correctly in FP6 as well as inside my project's movie under FP9.  What's going on here... what's blendMode and why is it being used inside the .change command for some frames and not others?


----- circlej.sc

# rest is same as circle.sc

    .frame 1
       .jump orb scale=100%
    .frame 2
       .jump orb scale=95%
    .frame 3
       .jump orb scale=90%
    .frame 4
       .jump orb scale=85%
    .frame 5
       .jump orb scale=90%
    .frame 6
       .jump orb scale=95%

----
reply via email to

[Prev in Thread] Current Thread [Next in Thread]