I recently had a revelation about the way flash works - I posted this finding on a more general forum - but no-one answered. So I thought I'd try the more enlightened mac users. Ok, maybe you all know this, and you're gonna say "We knew THAT! - what planet have you been on!".

Let me explain first the way I had assumed (until now) that flash works:-

Assumption: Flash need only encode the keyframes. This is more efficient in terms of file size and download time. Tweening is performed by the player at run time. Suppose for example you wish to move an object very slowly - this would require many tweened frames - but that doesn't matter, only the keyframes need be encoded to describe this movement. This is the beauty of SVG. To encode the tweened frames would be inefficient, therefore Macromedia wouldn't do it this way.

This assumption is wrong!!!

Flash renders the movie into frames when it creates the .swf. Try a long tween and look at the size report. This is why .swf file sizes have often baffled me. The only possible advantage of the way Macromedia have done things is runtime (browser) computational complexity considerations? Hardly an issue on todays computers?

Forget about the compress option in Flash MX! Scalable Vector Graphics make it possible to produce miniscule file sizes for animations - using the scheme that I described. Why don't they do this?

Fortunately, I usually use Actionscript, which I've found can create much smaller files than by timeline techniques - but it shouldn't be this way!