2009
07.01

In just a few days, almost four years later than expected, I’ll be making my return journey from Australia to the UK.

London

Looking forward to the city.

But will miss this, a lot.

But will miss this, a lot.

Living and working in Australia has been awesome, I’ve had the opportunity to work with some excellent companies like http://www.massive.com.au/ and more recently the Über creative http://www.hollersydney.com.au whilst enjoying one of the best cities in the world.

From a work perspective I’ll be back online from September, continuing to work with Flash and hopefully moving into iPhone development. If all things go according to plan I’ll also have a portfolio site up and running by then. In the mean time if you’re in London and looking for a senior Interactive Developer come September then please, post a comment.

I will certainly miss the job, lifestyle and friends I’ve had in Sydney but right now I’m getting pretty stoked about life in London and a chance to see old friends and family.

Until then.

Bookmark:
  • Digg
  • del.icio.us
  • Facebook
  • Mixx
  • Google Bookmarks
  • LinkedIn
  • StumbleUpon
2009
06.09

Dope Awards - yes please.

Dope Awards - yes please.

So, our creative director http://between0and1.wordpress.com has just come across http://www.dopeawards.com as we got a ‘recognition’ for 6 beers (sweeeet!!). I’m thinking this might make a welcome change to the now ‘video heavy’ http://thefwa.com . Funny thing is, dope awards looks a lot like the fwa of yester-year – anybody else noticed this?

Bookmark:
  • Digg
  • del.icio.us
  • Facebook
  • Mixx
  • Google Bookmarks
  • LinkedIn
  • StumbleUpon
2009
06.02

[Update] Comments fixed now, sorry about that – moved to a new server.

Full Quality Texture and Stage

Full Quality Texture and Stage

I recently finished a 3D ‘metropolis’ in Papervision, and had a lot of fun doing so, although to be honest – I was rather disappointed with the performance. Given the time frame (just over three weeks) I’ve no doubt there’s room for improvement in my code, but I’d really hoped for more. I should be clear that I’m not criticising Papervision, or Flash – but developers need to be aware of the technologies limitations (I wasn’t) before signing off on a brief :) . Still, if you’ve already made it that far, below is a list of the most significant performance boosts I used to get past the finish line;

StageQuality; I was horrified about the idea of reducing stage quality – but the truth is, reducing the stage quality whilst a 3D animation takes place is a big plus for the frame rate and hard to spot in terms of quality. Thanks to http://www.julapy.com/blog/ for that one.

Low Texture and Stage Quality

Low Texture and Stage Quality

Texture size; If you’re going to use movie clips as textures you should note that performance is directly proportional to the clip size. As with StageQuality reducing texture size whilst making a transition pumps up the frame rate without being noticeable. Another big plus of variable texture quality is the ability to zoom in on a 3D texture without it becoming pixelated. To vary the textures quality I added it to a parent container; this way Papervision can use the scaled width and height without messing up the UV mappings;

_textureClip.scaleX = _textureClip.scaleY = TEXTURE_QUALITY;

var bitmapMe : Sprite = new Sprite();

bitmapMe.addChild(_textureClip);

_movieMaterial = new MovieMaterial(bitmapMe, useAlpha, false, false, new Rectangle(0,0,512*TEXTURE_QUALITY,512*TEXTURE_QUALITY));

Low texture quality

Low texture quality

Animation; The performance hit generated when animating textures is the most significant of all settings – I didn’t use it freely on any of my textures. Instead I enabled animation if and only if the texture had update. The simplest example of this being button rollovers . By animating the texture when the button is rolled over, and disabling again once the movie clip animation is finished you get a big change in overall performance. To this end all of my 3D display objects extended a single class that would call (usually via a timer/enter frame as animations took place);

movieMaterial.drawBitmap();

In the end though I did have a lot of fun with Papervision, Blender and the rest - but next time I tackle something like this I’ll do so with these limitations in mind.

Bookmark:
  • Digg
  • del.icio.us
  • Facebook
  • Mixx
  • Google Bookmarks
  • LinkedIn
  • StumbleUpon
2009
02.02

I’ve been lucky enough to spend the last few weeks working on a cover designer for the Australian addition of FHM. Although there was the obvious challenges of looking at scantily clad women all day long, there was also the chance to work with some great designs and concepting.

FHM Recovered

FHM Recovered

As with previous work I’ve made heavy use of bitmap data and bitmap distortion. What increased my love for BitmapData in this instance was the merging of timeline based animation and the bitmap distortion class. By inserting distorted bitmap grabs into timeline animation you can get some really excellent results; If you head over to fhmrecovered.com.au and check out the amateur section, and then preview the cover (magnifying glass) you’ll see the sweet timeline animation with the visual assets inserted and distorted.

Given the introduction of fp10 I imagine we’ll be seeing even greater teamwork between both flash designers, and flash developers over the coming months, and based on my experience with FHM this can only lead to great things.

Should you be based in Australia then please have a go at entering fhmrecovered.com.au as the winner takes a prize of $5000 and a week’s internship at hollersydney.com.au (I’ll be after a 10% cut ;) )

Bookmark:
  • Digg
  • del.icio.us
  • Facebook
  • Mixx
  • Google Bookmarks
  • LinkedIn
  • StumbleUpon
2008
12.11

Bats!

I’ve recently had the opportunity to try my hand at processing. Nothing serious, just hacking into the more talented Julapy’s code. So what did I do? Not a lot – Julapy made the bats move around etc, I just orientated them in 3d (gave the pitch and roll to match their direction). Sweet result though, check out the video below.

 

bats_01 from lukasz on Vimeo

 

An interactive version of the bats are going to be on show at the Holler Christmas party (sweet!).

Bookmark:
  • Digg
  • del.icio.us
  • Facebook
  • Mixx
  • Google Bookmarks
  • LinkedIn
  • StumbleUpon
2008
10.16

AS3 Physics Engines

I’ve just finished a small campaign site for a new low carb beer. Given the short time we had to deliver the projected I was looking for a quick and easy way to add life to the sites ‘props’, and rigid body physics seemed like the right choice.

Motor2 Physics in action

Motor2 Physics in action

In the rush to get things off the ground quickly I tried APE, FOAM and Motor2 to see which engine could most easily give me what I was after. APE is actually particle based (although you can form rigid bodies by combining particles) so that went straight out of the window. Next up was FOAM which was easy to implement and did everything I needed, but had a terrible case of the jitters. Each time a number of rigid bodies came together they would start shaking – this also happens with the examples so wasn’t specific to my implementation. Finally I tried Motor2, and although it was a bit more difficult to implement it did exactly what I was after.

So, in short, if you need rigid body physics in one of your projects, take a look at Motor2.

Bookmark:
  • Digg
  • del.icio.us
  • Facebook
  • Mixx
  • Google Bookmarks
  • LinkedIn
  • StumbleUpon
2008
09.19

Google Maps AS3 Api

I using the new (ish) google maps Api for a mini-game, augmenting the map with some sprites etc… anyway, I wanted to put the word out about how amazing it is. In just a few lines of code you can have the map showing with all your customised overlays/markers the lot – all natively in AS3. So, if you’ve been putting off using google maps in your flash applications because you were worried about the complexity, worry no longer.

Google Maps Flash

Go map.

Bookmark:
  • Digg
  • del.icio.us
  • Facebook
  • Mixx
  • Google Bookmarks
  • LinkedIn
  • StumbleUpon
2008
09.14

iTunes + iTouch = lost music

Sorry to use this space for a rant but I have to get this off my chest.

I’ve just been told by an Apple rep that I can get back some music files I’ve lost on iTunes just this once, but I sholdn’t expect to be able to do it again “Please note that you may download your purchases only once, so this is an exception”. Fair enough you might say, that is if you didn’t know how I lost the files in the first place;

After downloading tracks off iTunes directly on my iTouch I decided to sync to my computer. Unfortunaly for me iTunes on the computer and my iTouch had decided they didn’t get along anymore and wouldn’t sync. After much fiddling it appeared the only way they would sync would be to totally reset my iTouch resulting in the lost music. Off to Apple I thought, they’ll give me my DRM’d music back since it’s there hardware and software that has eaten it all up, but as you now know, this is not the case…

So, the moral of the story is – don’t buy tracks off the iTunes store if you expect them to provide re-downloads in case of an accident, even if the cause of the accident is there software/hardward.

Bookmark:
  • Digg
  • del.icio.us
  • Facebook
  • Mixx
  • Google Bookmarks
  • LinkedIn
  • StumbleUpon
2008
07.31

The previously mentioned Samsung People site now has voting, plus a few new effects. Check it out.

Bookmark:
  • Digg
  • del.icio.us
  • Facebook
  • Mixx
  • Google Bookmarks
  • LinkedIn
  • StumbleUpon
2008
06.22

I was really struggling to find a fix for this whilst working on www.fortheloveofbeer.com.au so I thought I would post something here – to keep the transitions fast I had to take a bitmap of my screens (cacheAsBitmap just doesn’t seem to cut the mustard when you have a lot of text on stage) but I kept getting the following error;

SecurityError: Error #2123: Security sandbox violation: BitmapData.draw: http://blah/main.swf cannot access unknown URL. No policy files granted access.

I tried every security fix I could think of but nothing helped. Trying to bitmap draw a screen with a custom video player component was causing the problem. If I tried to do the bitmap draw before an flv was loaded it would throw this error. Turns out that the NetStream object requires onCuePoint and onMetaData handlers to be defined or you will get this error. Why this should result in a security error I’ve no idea but if you come accross this problem yourself try the following and you should have a solution;

var clientObject:Object = new Object();
clientObject.onCuePoint = onCuePoint;
clientObject.onMetaData = onMetaData;

netStream = new NetStream(connection);
netStream.client = clientObject;

private function onCuePoint(e:Object):void {};
private function onMetaData(e:Object):void {};

If you get this problem yourself please leave me a comment letting me know… I couldn’t seem to find anything about this when I was looking for a solution.

Bookmark:
  • Digg
  • del.icio.us
  • Facebook
  • Mixx
  • Google Bookmarks
  • LinkedIn
  • StumbleUpon