Flash 8 Bootcamp

I realized I’ve never blogged this officially, so I thought I should.

Over the past couple months I have been assembling a new workshop called ” Flash 8 Bootcamp“, which I will be running in Toronto on Nov 11-12 (this Friday-Saturday) and Los Angeles on Dec 2-3. It is an intensive two day workshop that covers every new feature of Flash 8 in gritty detail. The thing I like about this workshop is that unlike my previous “Enterprise Development” workshop, this workshop is accessible to a much broader range of Flashers (both because of the low pricing, and the lower prerequisites) and the content is much more future-proof. While the course won’t specifically look at AS3, I’d say over 80% of the content is directly applicable to it. This is largely due to the fact that most of the Flash 8 features were added with AS3 migration in mind.

UPDATE: The bootcamp will be running in London, UK on February 11-12. Please read the announcement for more information.

I also like this workshop because it should be a lot of fun. While I love teaching hardcore technical content, it’s nice to do a course that is much more relaxed and visual.

Continue reading →

Flash 8: Webcam Fire

I’ve been building out some new demos for upcoming conference sessions and workshops, and really like this one, which generates fire onscreen based on webcam motion. It basically turns you into the Human Torch. I think it’s a nice counterpoint to my Webcam Snowstorm experiment – fire and ice.

Another thing I find really cool about this is that it’s only a 1kb swf. Good work Flash engineering team!

Check it out, Flash 8 Player and a webcam is required:

Continue reading →

Great Pumpkin Showdown II

Ahh.. the age old tradition of hideously mutilating rotund orange squash. Hallowe’en just wouldn’t be the same without it.

Last year we started a company tradition of having a pumpkin carving competition, and putting the finished products online to let you, the abhoring public, vote on them. The victors won glory and many baked pumpkin seeds, whilst the losers brought burning shame upon them and their families (along with the burnt pumpkin seeds).

We’re posting this a little late this year, but dang it, we’ve been busy. Here are the competitors this year (3 this time, gskinner.com has grown). Who will reign supreme, and who will be, uh, squashed?

Continue reading →

Major Flash Player 8 Memory Leak

Or… how to kill a user’s computer with 1 line of ActionScript.

I’ve been profiling CPU/RAM usage in Flash 8 content in the last few days in preparation for the Flash 8 Bootcamp I’m running in Toronto and LA. Last night I ran into a major memory leak that is wreaking havoc with some of my latest experiments, and this morning I isolated it. This leak makes it ridiculously easy to accidently create a process that increases the Flash Player’s memory heap at a very rapid rate, and ultimately immobilizes the user’s system (I’ve had to do a few slow motion restarts while testing this – I had over 15GB of virtual memory dedicated to the player at one point).

Continue reading →

And the gOOify Mike Chambers winner is…

A week ago we posted a friendly contest to gOOify Mike Chambers charming poonum. There was a ton of great entries – many of which made me laugh out loud. We went through 3 rounds of judging, based loosely on creativity, humor, title and execution.

In the first round, each of our 5 judges (AKA gskinner.com Flash developers) each nominated 3 entries as finalists. The nominees were:

Siamese Chamber Cat

Sumo Mike

Malignant

Mike as a punk

Yogi

My dog wants in on this too

Demonic Mike

Damn! Ugly one

Incredibles

Mike Chambers? or Agent Smith? (Matrix effect)

Just me (near the bottom)

Fat Kid

Alien

Ostrich

In the second round, each judge cast 3 votes for nominees other than the ones they chose in round 1. The votes from both rounds were tallied to find a winner – but we wound up with a surprise tie between Sumo Mike and Fat Kid (apparently we have a soft-spot for obese Chamberses). In the final round, Fat Kid Mike squashed Sumo Mike to take the title. Congratulations to Patrick Pietens of flashaddict.nl for olympic-level gOOification – he will be receiving a free copy of the gProject panel as a reward.

Great work by everyone! Here’s a list of all the web accessible entries we received. We also received a couple of entries by email from Saverio Caminiti and Mads Bjerre which were included in the judging.

Continue reading →

Alpha Video Article Released

Macromedia has released the second of a series of articles from us Flash developers at gskinner. This article entitled “True Alpha Video in Flash 8” gives you the knowledge and skills to create your first alpha video, and how to use that video in Flash. I learned a lot about the new Flash 8 video in researching this article, and I really hope you take away some good knowledge about creating and using alpha video from reading this. You can read my article here. While researching this article we had tons of fun filming Guirellmo the hamster for the goofy demo below. Guirellmo’s whole purpose was to eat, and run across the screen (easier said then done). Just click to drop food in his feeding area and watch him do his thing.

Continue reading →

Upcoming Events: LA U/G, MAX, Spark, Workshops, FF

Man, I have a ridiculously busy schedule over the next few weeks… To think that a week ago I was lounging in the sun on the Mediterranean on my honeymoon.

There’s some great events coming up that I’m proud to be a part of, in chronological order:

  • LAFlashapaloozastock (love the name), Oct 15th: All three (!?) LA Flash User Groups have joined forces to put on this pre MAX gathering. I’ll be doing a freeform “performance” (first time I’ve had a preso billed as a performance, but it almost works for this one) on my latest Flash 8 experiments, including a few wicked cool ones that I’ve never shown publicly.

  • Macromedia MAX, Oct 16-19: This will be my first time at MAX, and I’m looking forward to seeing the sights, meeting up with the MM crew (have to congratulate them on all the awesome work), and other Flashers. I’ll be doing a light-speed talk cramming all of the new Flash 8 features into less than one hour (I’ll be qualified to run auctions by the end of my last session). It’ll be fast, informative, and hopefully fun.

  • Flash 8 Bootcamp in Toronto and LA, Nov 11-12: I’m working with FitC to deliver a two day, comprehensive workshop on the new features of Flash 8. It is “the fastest way to get up and running with all of the new features in Macromedia Flash 8 Professional”. I’ll also be running this workshop in Hollywood Dec 2-3. For more info, check out the Flash 8 Workshop site.

  • Spark Europe (AKA Flashers gone wild), Nov 16-18: Yes folks, it really is a legit Flash conference in Europe. Organized by Stewart McBride of UDA (formerly one of the main organizers of FlashForward), and backed by Macromedia, this should be a great conference. They have a great speaker line-up, and it’s in Amsterdam dangnabit. I guarantee there will be stories floating around about this one for years. It looks like I’ll be doing a 3 hour workshop on Flash 8. Keep an eye on the site for more details.

  • FlashForward2006 Seattle, Feb 27-Mar 2: I hope to attend this inaugural Seattle FlashForward. I’m excited to see that Lynda is working hard to breath new life into this conference and make it even better than it’s been in the past.

Busy, busy. But there’s certainly no shortage of things to talk about with Flash 8, Zorn, Flex 2, and AS3. I think I’ll be watching a lot of the sessions at these conferences, which is something I haven’t done in years – exciting times!

Going to one of these events? Have a question about the workshops? Post to the comments – I hope to see you at one of them.

Source Code: Shape-based Hit Detection in 8

A while back I posted a demo of shape-based hit detection in Flash 8. At the time, I wasn’t allowed to post the source code, but promised I would later. So here it is.

The com.gskinner.sprites.CollisionDetection class is really simple to work with, there is a single static method called checkForCollision with four parameters:

checkForCollision(movieClip1,movieClip2,alphaTolerance);

movieClip1, movieClip2 – The MovieClip instances to check for collision.
alphaTolerance – a number from 0 to 255 that specifies the transparency tolerance when testing the collision. A higher number will increase the tolerance (ie. allow more transparent parts of the MovieClip to register collisions). Defaults to 255.

Returns a Rectangle object specifying the intersection of the two MovieClips in the _root coordinate space, or null if they do not intersect.

Check out the original post for more information on how the class works.

Click here to download. It includes two simple demos to help you get started with it.

Continue reading →