I used filmed action of Beckham himself and the video alpha channel support of Flash 8, which was rather new at the time. I was consulted on all aspects of filming and production. After we agreed game concepts, I met with the film crew at ‘Off The Radar'; I drew up the shot-list and we decided to shoot on HD at 50p, to get the cleanest possible key.
I went to Madrid for the green screen shoot with Beckham as visual effects supervisor and was responsible for treating and editing the footage for game production and related media.
I stitched some of the sequences together with morphs to create almost seamless blends between shots and added filters to the keyed out footage to match lighting and improve the compositing.
I coded a 3-D projection system in Flash and perspective-matched each scene, so that objects move around the screen convincingly. I worked with the designers at DDB, who created the backgrounds and UI elements. I included ‘Express Install’ capability for those users without Flash Player 8, so 95% users can upgrade painlessly from Flash Player 6 or 7. All the games are mouse-controlled and were tested by kids for usability and game balancing.
I thought I’d give a quick insight into how the animation effects in one of my projects were acheived.
Scott Bedford, former Creative Director at Carlson Marketing, posted this video of a project we worked on a while back, for the Lurpak Breakfast campaign. I created all the animation prototypes for the various effects used throughout the site, some of which can be seen here. The site won two DMA awards, but I’m most proud of the crumbs animation and the code-generated interactive steam effect – similar to the one you’ll see on my homepage.
Crumbs animation. 1000 Bitmaps random position themselves until around the edge of the bread mask shape, animated with simple mouse interactive physics – force, velocity, momentum and friction all tweakable
Steam effect. Perlin noise moving through another perlin noise BitmapDisplacementFilter, to which user generated displacement can be applied, then all blurred
Egg Timer animation. Particle system with basic physics and just a draggable mask
Do Not Disturb tag. Maths-based animation for the swing only, the rest is old-school timeline animated
Fry-up triple banner. Three banners synchronise object positions/velocities using LocalConnection to send packets with a TTL applied to avoid a feedback loop
Spinning letters. TextMetrics used to break a populated TextField into separate letters, each one animated into a simple 3-D engine I knocked up, with simple physics used to achieve the swirl motion
Hang-over breakfast. Just a blurred mask, though I prefer my version from my original – alpha a blurred copy of an image over the original for a proper hazy effect
Other animation. Uses a combination TweenMax, maths and frame-by-frame, e.g. pancakes, bedroom door
Not mine: Wise-crack banner, breakfast tray messenger banner, down tools drawer, coffee bean counter, flapjacks, emails
I’d recently been playing around with packaging AIR for iOS, to run on my iPad. While the performance has been improved massively since CS5 Packager, it’s still not great in AIR 2.6. It seems that AIR 2.7 brings with it some great performance enhancements – though I’ll reserve judgement until I’ve tried it myself – check out the article and video here.
So, in my first steps in tablet development, I cracked out a simple app for the new Blackberry Playbook and got a free Playbook! It’s a very nice piece of hardware. You can see my app (a very simple doodling application, called ScratchPad) here.
At the risk of getting sucked into the Apple vs Adobe shitstorm, my own response to Apple chosing to block Flash content from their mobile devices is to at least tell users why – because Apple left it at the rather obscure blue lego block, with no explanation (great experiential design guys). Simply include this code in your page/s to redirect mobile safari users to a page of your chosing …I direct them here.
How to allow SWFs to display at 100% width/height in your browser – but enforce a minimum width and height, in case of a smaller browser window size than you’ve designed for.
With my simple FlashSize script, all you need do is call:
I’ve seen a few people get into a pickle over this one. When you’re developing and testing locally, you need to set the ‘Local Playback Security’ setting (sometimes referred to as the ‘use network services’ option) depending on whether you wish to access local external files (e.g. XML files, or images) or some other server (e.g. your dev backend server). You can’t access both from a locally running SWF anymore, since it’s a security risk. So here’s how to set that option in Flash CS3 / CS4 or from within FlashDevelop.