Grant Skinner

The "g" in gskinner. Also the "skinner".

@gskinner

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 →

Flash 8: gOOify Mike Chambers, and win!

So I’m back from my honeymoon on the Mediterranean, which was awesome, and very relaxing. Being the nerd I am I came back with a few sheets of sketches and descriptions of experiments/concepts I wanted to pursue when I got home.

The first idea that I tackled is an image goo-ifier that works similarly to PowerGoo, or Liquify in PhotoShop. It’s pretty simple in implementation, but is one of my favorite Flash 8 experiments to date.

This experiment was inspired by Guy Watson’s PowerGoo experiment, though I believe it takes a completely different technical approach. I’m guessing his uses per-pixel manipulation, whereas mine uses a dynamically generated displacement map. His offers more flexibility in the level of manipulation, while mine runs a lot faster, and generates a smoother result. It also includes a snifty animate function.

Thanks go to Mike Chambers for agreeing to be the victim of your distorting (distorted?) fun. I thought it was fitting to use Mike because in many ways he’s the face of Flash – and I’d already picked on Mike Downey enough. 🙂

Just to make things interesting, we will be giving away a free copy of gProject to the best gOOified picture of Mike that we receive by Monday, October 10, when we will post the cream of the crop and the winner to the blog. For now, you’ll have to screenshot your results, post it to your site and put a link to it in the comments with the title of your “art” (or email the pic to us).

Which reminds me: we have another free copy of gProject for the first person to create an AS & PHP system for sending a COMPRESSED version of a BitmapData object to the server and saving it as a JPG.

Continue reading →

gStartPage

gStartPage is an extension for the gProject Panel. It gives you quick access to your gProjects and lets you select a project without having to open a blank document first. Clicking a gProject selects the project in the gProject panel and opens the anchor FLA in flash. If the panel is not open, the anchor file will still open, and the project will be selected when you open the panel manually.

Continue reading →

gProject for Flash 8

I know its a little later than promised, but an update to the gProject panel is now available that plays nice with Flash 8 (But still works in MX04 7.2). The new version also fixes a few bugs, and takes advantage of some of the new Flash 8 enhancements (such as setIdleTimout).

As usual, gProject can still be purchased here, and you can find more information on the gProject page, as well as the online documentation, which has been updated. For those who purchased gProject, you should receive an updated version via the email address you provided today. If you haven’t received anything, please feel free to send an email to gskinner (at) kagi (dot) com.

Important Notice

gProject does NOT work with projects and files stored on a network drive. This has to do with a limitation in the JSAPI, and as such may not be resolved in future versions.

Flash 8 Source – ColorMatrix

The new ColorMatrixFilter in Flash 8 provides enhanced color manipulation capabilities to developers. If you’ve played around with it, you’ve noticed that the ColorMatrixFilter accepts a 5×4 matrix (20 element Array in Flash) and uses specific indices in that array as multiplication values for Red, Green, Blue and Alpha, as well as offset values (we are currently writing an article explaining different types of matrices in depth, including the ColorMatrix, which you should see at Macromedia’s Developer Center in the near future). The ColorMatrix class was born a while back out of the need to have a more “friendly” programmatic interface to manipulating these color values.

ColorMatrix provides a way to adjust Brightness, Contrast, Saturation and Hue based on a range of numeric values as well as multiply matrices. The ColorMatrix can then be passed into ColorMatrixFilter to apply color adjustments. The added bonus of ColorMatrix is that it uses the same calculations to generate matrix values as the Flash 8 IDE (with the exception of contrast adjustment which uses linear interpolation to provide a bit more granularity).

Continue reading →

Flash 8: DevNet Article Series

Macromedia has been working hard to ensure there will be a steady stream of information available to developers when Studio 8 drops, and here at gskinner.com we’ve been working hard to help them. We’re writing a series of DevNet articles, which will be released over the next couple months, on some of the hottest new features in Flash 8 Professional.

The first three, which should be released over the course of the next month include: an exploration of my varicose-g experiment in Flash 8; a beginners guide to preparing and importing video with alpha channels using After Effects and Flash 8; and a look at binary numbers, hex numbers, bitwise operators and color values. We’re planning to follow those up with a few more great articles on important Flash 8 topics.

Keep an eye out for them and a ton of other great content on the Macromedia DevNet. We’ll also post here as each article is released, along with other tips and code.

Here’s a look at varicose-gv8 (which you might recognize from a MM keynote). The latest Flash 8 player is required.

Continue reading →