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