
Tag Archives: Adobe Flash
Composition #69

Some people have asked to see what a color map might look like unprocessed. Here is the color map I used for Composition #69.

Composition #68

Composition #62

Composition #59

Composition #57

Prints up to 16" x 11" available at Imagekind. Limited edition signed prints in sizes up to 60"x34" are available directly from me, send a flickrmail for inquiries.
Actionscript 3.0 and clickTag
I just discovered that in order to use a Mouse Event to initialize a navigateToURL() call, the HTML tags on your movie must have AllowScriptAccess set to always.
If AllowScriptAccess is set to never or sameDomain, the call will fail.
Adobe owns the web and they don’t even know it
Benjamin Meyer has noticed an interesting trend in user behavior:
The last ten months I have been hacking on a little cross platform WebKit based browser call Arora. Users try it out and are mostly happy, but near all of them end up asking me the same thing:
How do I get flash to work?
Sequencing Events in Flash
While over on the flashkit boards yesterday I was going
through the various posts and lending a hand where I could – as I do most
days – and I came across two people who were asking pretty much the same
question: “How do I sequence events using the mx.transitions.Tween class?”
They were both trying to use the onMotionFinished() event
handler to cause events to fire in a set sequence and wanted to know how to
cause an event to be called at a time other than exactly when the motion from
the Tween was completed.
The problem here is that onMotionFinished() isn’t meant for
hardcore event sequencing… that’s what the timeline is for. The timeline is the
only real reason to buy the full flash suite, and ignoring it, especially for
sequencing is ignorant.
In the end I offered three solutions:
- Create a series of setInterval() functions that are timed to
execute your tweens. While not ideally flexible, this method does allow
manipulation of the sequence in milliseconds, and all from a single screen. You
must remember to add a clearInterval() to the function that the setInterval()
calls or else your tween will happen over and over again. - The best solution is to place the tween actions on different
frames and use the timeline to space those frames. This provides an easy to
adjust, graphical representation of the sequence and maintains the tween class
benefit of being able to use built-in easing. - Another solution, while not ideal for large, complex
animations, is to take the tween class away, and manually tween the items on
the timeline.
All of these solutions will work well for static animations
such as those found in intros, scene changes, and button animations, but the
Tween class’s real power is in interactive animation. Interactive animations
are determined at runtime. They use variables that are dependant on the users
actions and are likely to be different every time.
The Tween Class has a cool method called continueTo() which
can give a tween a new destination. If you link that new destination to the
_xmouse or _ymouse properties you’ll quickly see the potential power of the
tween class.
In conclusion, while it is generally best practice to have
all your ActionScript on frame 1 of your Flash movies, it’s ok to use the tween
class (or any ActionScript) in combination with the timeline if you know you
want a series of actions to happen at pre-determined times. That what the
timeline is for.
Tutorial: A Simple script to create a random flicker
Objective:
To create a method that causes a random flickering effect.
To set this up , create a movieclip on stage and give it an instance name of myCoverUp. The script below, declares a variable on the main timeline so it can be used outside the scope of the function flicker(). Then the function flicker chooses a random number between 0-50, toggles the visibility of myCoverUp, then clears and creates a new interval timer using the random number as a delay.
var nextInterval = 100;
flickerInterval = setInterval(flicker, nextInterval);
function flicker(){
nextInterval = Math.random() * 50;
myCoverUp._visible = !myCoverUp._visible;
clearInterval(flickerInterval);
flickerInterval = setInterval(flicker, nextInterval);
}