Flash animation on the fly?
November 23, 2008 4:55 PM   Subscribe

How can I use Adobe Flash to animate on the fly?

I've been making cutout puppets for a Flash animation (on a Mac).

I've created the characters in Photoshop, and assigned each body part to its own layer.

Instead of animating them in the standard way: keyframe, move a body part, keyframe... I'd like to animate them by recording my mouse movements -- treating the characters like actual puppets.

For example, if I wanted a character to wave his arm, I'd select that particular limb, hit record (or whatever that button would be), wait for the cue, and move my mouse accordingly -- thus recording the waving motion.

Does that make sense?

I would then go on to add to that movement by, say, selecting the head and animating that in a similar fashion. I would build the animation up bit by bit, hitting record when I want to drop in another movement.

Is it possible to do this? Is there a plug-in/script that would allow me to do it?

If not, what program might?
posted by popcassady to Media & Arts (8 answers total) 1 user marked this as a favorite
Does a motion guide do what you want?
posted by niles at 5:07 PM on November 23, 2008

There's nothing like that in Flash that I've ever heard of. Sorry.
posted by Class Goat at 5:13 PM on November 23, 2008

I don't know, but you might want to ask this on a Flash list, like Flashnewbie, Flashcoders or Flash_Tiger.
posted by me & my monkey at 5:32 PM on November 23, 2008

I'm a professional Flash developer. This doesn't exist in Flash. However, Flash is extensible, via a couple of Javascript-family languages. So your best hope would be to learn how to program Flash and build such a tool yourself (or hire someone else to do it).

After Effects has a simplistic version of what you want built in. It's called Motion Sketch. However, it only allows you to animate position. You couldn't animate rotation with it, which is what you'd need for a waving arm.

I wish I had more time. If I did, I'd build you a tool. But it's a bit of a complex project, and I'm busy with work stuff. Still, it would be a fun project. I might make something eventually, but it wouldn't be fast.
posted by grumblebee at 7:04 PM on November 23, 2008

I should mention that the animation procedure has been simplified in Flash CS4. You no longer have to set keyframes. You just drag the graphic where you want it to move. But it's not real-time like what you want.
posted by grumblebee at 7:06 PM on November 23, 2008

What you're describing falls under the umbrella term machinima, and more specifically digital puppetry. The difficulty is that most people working in this space are more interested in 3D, generally using commercial 3D game engines like Unreal Engine or Source. Flash isn't a preferred platform for this type of creativity.

I don't have any specific software recommendations (as I'm aware of the topic but have never participated), but if you're willing to go outside of Flash and consider working in a 3D environment, some research around machinima and digital puppetry will yield a lot of worthy examples of work done in this area. (If your work is more suited to 2D, know that a 2D presentation can actually be accomplished with a 3D engine--start with the term orthographic projection--but you will still need to become comfortable with 3D models and working in 3D space to some extent.)
posted by [user was fined for this post] at 10:06 PM on November 23, 2008

What you want to do is certainly possible.

I'd go about modifying one of the many ragdoll examples on the internet. Then for the recording you could use a setTimeout to record all the co-ordinates every frame and save them into an array

It will be a complicated bit of actionscript though... :)
posted by derbs at 2:59 AM on November 24, 2008

another ragdoll example here using the Fisix engine in Flash which is supposed to be good
posted by derbs at 3:02 AM on November 24, 2008

« Older Sysadmin advice for a first timer?   |   Is my freezer malfunctioning? Newer »
This thread is closed to new comments.