Skip navigation
Currently Being Moderated

Modifying MovieClip filters breaks animations

Jun 26, 2012 10:59 PM

Tags: #filters #nested

Flash can be frustrating as hell, sometimes.  Here is my latest roadblock -- if you know how to fix this problem, please let me know.  Thank you!!!

 

 

1)  I create an animated character using CS5.5, and compile it into a swf.

 

2)  I load the character's swf into a new document (programmatically, via a Loader), and add it to the display list.  So far, no problems: the character is animating just fine.

 

3)  BUT, the character is too large for my current scene, so I scale its root container down (scaleX = scaleY = 0.3 -- something like that ).

 

4)  Wow!!  I realize filters on nested Sprites and MovieClips are not scaled along with the root container !!!  Undeterred, I write a little recursive function to navigate down the display tree of the character, and scale down all the filter properties that can be scaled.

 

5)  So far so good: the character and all its root & nested filters are now properly sized, BUT the nested MovieClips within the character whose filters got modified no longer play their animations!!!

 

6)  I try to force them to play programmatically to no avail (ex: myCharacterMc.headMc.gotoAndPlay( "eyes_blinking" ) ).  What gives???

 
Replies
  • kglad
    62,117 posts
    Jul 21, 2002
    Currently Being Moderated
    Jun 28, 2012 6:16 AM   in reply to AsterLUXman

    assigning a filter to a timeline animation will break the timeline animation (as you now know).  there is no work-around that i know of except, don't apply a filter.

     

    and that gets back to your problem of unsized filters.  i am not aware of that being a problem.

     

    what are you seeing that makes you think your filters are not scaling (4)?

     
    |
    Mark as:

More Like This

  • Retrieving data ...

Bookmarked By (0)

Answers + Points = Status

  • 10 points awarded for Correct Answers
  • 5 points awarded for Helpful Answers
  • 10,000+ points
  • 1,001-10,000 points
  • 501-1,000 points
  • 5-500 points