Reasons to be talky

Posted by rob on August 21st, 2014

So this is a little last-minute, but nevertheless extremely welcome – I’ll be speaking at this year’s Reasons to be Creative conference in Brighton in less that two weeks time! The conference is something of a habit for me attendance-wise given the short hop from my home in London, so the opportunity to present some of the great stuff we’ve been researching and working on over the recent months is both a surprise and an honour.

I’ll be presenting a session called New Adventures in 3D, a collection of all the latest bits and pieces of our work at the Away Foundation, mixed in with some observations & insights we have encountered along the way. I’ll be covering some of the more techie aspect of WebGL and Stage3D, and may even show a little code if my fingers are up to it. ;) Full details of the session can be found on the conference site here.

You shall have a fish-eye, on a little dish-eye

Posted by rob on July 8th, 2014

While experimenting for an Away Studios project, I recently came up against the thorny issue of wide-angled rendering with a high field of view (fov). In Away3D it is possible to set the fov property of the PerspectiveLens to whatever value you feel comfortable with, but this doesn’t necessarily produce the best results at very wide angles (say, above 110 degrees). One solution to this is to post-process the image sent to the view using the same projection distortions seen in a fish-eye lens.

Fish-eye lenses are all the rage in photography but you tend to see them less in 3D graphics, possibly because they aren’t always the most efficient rendering technique. But when a project demands it, they are a necessary evil and worthy of some consideration. The most recent example of this has to be projection requirements for hardware like the Oculus Rift where the stereoscopic view requires a certain amount of barrel distortion to map correctly to the optics in the headset.

In my particular case, I was rendering a scene for projection onto a 180-degree dome – something you can see in most theme parks these days or IMAX cinemas (i was going to say “planetarium” here but I only just discovered that the London Planetarium was rebranded in 2006 and now hosts something called the “Marvel Superheroes 4D attraction” – so boo to them for making me feel old!). Essentially the screen is made up of several overlapping projectors that feed off a single master image of the projection called a Domemaster.  It is this that any video or interactive graphic needs to display if it is to be projected correctly onto the dome, and the distortions present in the Domemaster have similar characteristics to that of a fish-eye lens.

So how to achieve the effect? There are several methods, but the one I found to give the most pleasing results involves rendering 6 planes to a Skybox, and then rendering the Skybox to the view with a bit of shader trickery. The image below shows the effect in Away3D with  debug images rendered to the skybox instead of a scene – here we have a 180-degree fov set on the shader. An optimisation trick with this approach (unless you have a very high fov) is to move the skybox with the camera so that only 5 sides of the box are visible at any one time.

A strange thing about fish-eye lenses is the impression they give – a very stylised, immersive feel that thanks to massive overuse in fashion and pop-culture has led to a unmistakable association with cool. If you don’t believe me, check out the Away3D terrain demo with fish-eye applied – I defy you to disagree that things look instantly cooler ;)

Source code is available for the demo featured here, and the implementation in Away3D has been added to the dev branch on github as an additional post-processing effect. So next time your project is lacking a certain something, why not try a fish-eye lens?

DevGAMM Moscow, Multi-Mania, Typescript training

Posted by rob on May 9th, 2014

Fresh from several months of condensed development, I am finally letting myself out of the house again. The reason? Two conference presentations around some of the new work coming out of The Away Foundation, as well as the second workshop event for the library formally known as Away3D Typescript ;)

First there is the two-day gamesfest that is DevGAMM Moscow, full of cinematic suspense and drama, if their insanely great promo video is anything to go by. Gotta love those Moscovians… This event is being spearheaded by Mr Unity himself David Helgason, so plenty to look forward to! Things kick off on the 15th May at the Radisson Blu in central Moscow.

Afterwards, I’ll be railing-it down to Belgium for Multi Mania in Kortrijk. This is a free conference, and always confounds expectation by also being one of the best so no excuses for missing out! Dates are 19th – 20th May at the Kortrijk Xpo, with sessions from a great selection of speakers including the likes of Peter ElstSakri Rrosenstrom and Seb Lee-Delisle.

At both conferences, I’ll be talking about some of the new work we’ve been busy with in Typescript & WebGL, with further info on our plans over the next few months and where we see things headed, as well as all the latest demos and perhaps even a little live coding just so that you can see how bad my typing really is. The talk is called Finding AwayJS which should give some hint to its contents and direction.

Sandwiched between this, I’ll be holding a one day Typescript training workshop in Moscow on the 17th May, directly after DevGAMM. Details for this can be found on our Eventbrite page and parallel Timepad page (the latter to handle local currency). The workshop will be focusing on introductory 3D development natively in the browser, and all the recent goodness we’ve been tinkering with. This is your chance to get first hand training and advice on native web 3D development, with a ton of cool examples and walkthroughs. If the last Typescript training was anything to go by, it should also be great fun.

I can’t believe how long its been since my last post here, so I’m officially declaring this blog re-opened! Looking forward to meeting you all again.

Paper prototyping for games – workshop at TechmixMag’s Digital Summer Camp

Posted by rob on July 11th, 2013

What with all the other stuff going on at the moment, a visit to the Hackney Community College on Friday for this year’s Digital Summer Camp should be a welcome change. I’ll be working with groups of 12-18 year old throughout out the day, introducing them to the wonderful world of paper prototyping for digital games… with a small incentive that the best idea of the day will be turned into an open source game by The Away Foundation and published online! Should be an interesting day.

Digital Shoreditch & Cambridge Game Creators meetup

Posted by rob on May 15th, 2013

As part of the Digital Shoreditch festival this year, I will be attending the Make & Do event on the 15th and 16th of May as a presenter for Away3D. The idea with Make & Do is to create something in less than two days, based on a series of challenges set by the organisers. The “thing” can be an idea, demo, interactive game, mobile application… really anything so long as it resides in the digital domain.

I’ll of course be working with the teams who want to create something using 3D, and we’ll be using Away Builder, Away3D 4.1 and Away Physics to help us on our way. You can read more about the event (and find details of how to sign up) by visiting

A week later, I’ll be heading up to Cambridge to present at the Cambridge Game Creators meeting. This is a regular community event that recently became an official “Adobe Community” for Cambridge and the east of England. I’ll be presenting a session titled Cross-platform Gaming with Away3D, and will have time to go through some of the aspects of Away3D’s integration with the Adobe game Framework SDK, and how we are evolving with new updates and tools in the future. More details will be available on the CGC meetup page in the next few days


Invawayders update, now with more Ash

Posted by rob on February 1st, 2013

Some of you may remember the bundled Away3D game that came with the first Adobe Gaming SDK download towards the end of last year. Called Invawayders (already regretting that title…), it demonstrated a simple Away3D interaction with pixelated 3D space invaders, and had compilation options for both mobile (phone/tablet) and web applications.

The game has recently had  a bit of a spring clean, and in order to give it a more permenant home, we’ve uploaded to a new source repository in github. The source is arranged in three libraries, a core lib containing all shared assets and logic, and two FB projects for mobile and web publishing respectively. Instructions for installation can be found in the file.

The game itself plays very similar to the existing Invawayders demo bundled in the Gaming SDK, however this version has a couple of significant updates to it’s code architecture:

  • The game loop is now managed by the Ash framework, an extremely clean and flexible entity framework for AS3
  • The required Away3D version is has been updated to 4.1 Alpha, taking advantage of some of the new particle APIs

The live versions of the game have also been updated, these can be found in the following locations for each respective platform:

I am only just getting to grips with Facebook’s new App Center, so it may take a while for me to work out how to link the mobile games from the app page, but according to FB developers, the experience should be “seamless”. At least i finally worked out how to get that “play” button working again on the community page. Info about the game will appear here from now on now when there are any more updates etc, and if we’re really lucky we should be able to get the username shortcut for the page after 25 likes :)

Would be interested to hear what people thought of the re-architecture. I’m actually quite liking the approach that Ash places on game development, the conversion took a while to get my head around but after a bit of code wrestling, everything seemed to fall neatly into place. Hopefully I’ll be getting a chance to apply Ash to some more Gaming SDK examples in future.

Getting ready for the conslaught

Posted by rob on January 31st, 2013

Earlier this week, around the same time that Adobe was getting all amendy with their Flash whitepaper, we published our updated roadmap for Away3D & The Away Foundation. If you’ve not yet read it and are interested in what 3D shenanigans to expect from us, nows the time to have a look!

With a schedule beginning to form, my attention is drawn back to the some of the upcoming events we’ll be attending over the next few months, and in some cases, speaking. The first in line looks to be Casual Connect Europe, a games conference hosted in Hamburg from 12th-14th Feb. I’ll be presenting a short talk in the Indie track on Wednesday called Cross-platform 3D to the Max, which will look into some of the savings we can make when balancing performance and quality on the GPU – something applicable to many of today’s games published on tablets and phones.

The 2 days following Casual Connect will be spent joining in with the Adobe Game Jam group in Hamburg, where I will be teaming up with Chris Benjaminsen of PlayerIO and seeing how far we can get creating a multiplayer 3D social game. ;) The event promises to be a lot of fun, so if you’re around in Hamburg for the 15th & 16th and are interested in joining in or just coming along to observe, sign up for free attendance here.

After the jammin’, I’ll be heading over to the FITC conference in Amsterdam, where Richard Olsson of the Away3D Core Team will present a very exciting new talk called Away3D in The Open, with WebGL and Javascript. You can kind of imagine what that is going to be about, and the implications for us at Away3D are potentially very far reaching. However I’m not wanting to steal Richard’s thunder, so for more information you’ll just have to go to the talk.

Something to look out for almost directly after FITC, and especially if your a little less mobile, is the online Stage3D conference on Feb 22nd. check the website for details as things get closer, there’s already a strong lineup covering a very wide range of libraries. I’ll be talking about the cross-platform potential of Away3D & other Away Foundation projects, and there will also be a chance for Q&A on where we see things headed in the longer term.

Jumping forward  a few weeks, I’ll be attending the Flash Gaming Summit event in San Francisco for some shiny gaming nuggets, and this will be closely followed by the obscenely gargantuan GDC conference. The latter will be an interesting opportunity to showcase some new Away3D games to a wider gaming audience at the Adobe expo booth – for those who’ve not yet seen, we are taking submissions for any Away3D game developer interested in being part of the showcase content on the Away3D user forums, so if you’ve got something great in development that will have some sort of public release (or even promo video / site launch) on or before GDC, reply to the forum thread and let us know!

Finally, at the beginning of May, I’ll be returning to the West coast along with Richard to attend the “better late than never” revamped Adobe Max conference in LA. We will be presenting a new session titled Cross platform gaming with Away3D, and will be taking a look at some of the recent developments in 3D-land as well as some practical examples of Away3D workflows and optimisations. We will also be attending an Actionscript Gaming Frameworks panel along with other members of the SDK development teams for Starling and Feathers. Should be an interesting discussion about the current gaming landscape and where the various SDK libraries are headed.

I’m always open to meeting up with local Away3D groups or companies/developers using our libraries, so if you happen to be in the area at any of the events above and are keen for a chat, please let me know!

A millon little triangles: coming soon to LFPUG and FlashGamm

Posted by rob on November 27th, 2012

As one of the cornerstone concerns of the recent 4.1 Alpha release of Away3D, GPU optimisation is something we will all have to start paying more attention to in future. The discipline used to be reserved for the hardcore console elite, but these days the application of GPU technology is literally everywhere, and the consumer has wised-up to the importance of smoothly performing and battery-efficient software.

As a reaction to this, I have been busy preparing a new presentation that takes a look at what GPU optimisation means for the web & mobile industry in general, as well as in the specific case of Flash based products. The talk is called A Million Little Triangles, and I’ll be giving a preview of the session at the newly reformed LFPUG this Thusday, as well as the upcoming FlashGamm conference in Kiev, Ukraine in a couple of weeks time. We will take a look at some of the history of accelerated graphics, and some of the general principals that today’s hardware adhere to – principals that make steering round the pitfalls all the easier. Hope you can make it to either one!


Sadly, there had been a change of plan on the LFPUG front, now looks like this will be delayed until January.


Away3D 4.1 Alpha release

Posted by rob on November 15th, 2012

The more observant among you many have noticed a larger than normal activity-spike on our Github repositories recently, and wondered what was up. Well today wonder no more.

Its frankly a relief to get back into a more regular release pattern, and this one in particular should hopefully not disappoint. Away3D 4.1 Alpha is one of those things beloved of open source developers everywhere – a feature update. :D

Full details of all features in this release can be found over in our blog at, but the highlights include GPU accelerated particles, multipass materials, ATF texture support, realtime reflections, tools and geometry refactors, view volume partitioning, stereoscopic renderers… the list goes on.

However, all good fun must come to an end, and as this is an Alpha version, we are turning to you the community for help on the next stage of 4.1 development – fixing stuff. Any issues with the API, runtime errrors, performance problems etc, we want to hear about it. Use the ultra simple issues tracker in Github to get your message across, and while you’re there, perhaps even have a go at fixing a few!

My main contribution in this release has been around the new particles feature, and I have to make sure I give a shout out to the person who made most of that possible – the utterly awesome Liao Cheng. For now the team will be powering towards a stable beta, which we will hopefully be revealing more on in the coming weeks.

Away3D multi-knight demo

Posted by rob on August 21st, 2012

The animation system in Away3D has had a fair amount of refactoring in recent times, and as yet, less examples actually demonstrating performance and features. The demo above is intended as a first step to rectify this, in this case for the vertex animation system.

Animation data in this demo is imported via the MD2 format using one of the more well known examples from Quake days, the Perelith Knight. One of the great things about MD2 is its small size – the entire swf comes in at a smidge over 700k – an impressive feat considering the variety of animation and textures included.

Another advantage of vertex animation over other forms such as bones is its playback efficiency. Here we have 400 independently animating avatars with normal maps, specular maps and dynamic shadows, all running at a smooth 30fps on an average machine.

Full source is available for the demo – just select “View Source” from the right-click menu or use the direct link here to view and download. The demo uses the bleeding-edge build in the dev branch of Away3D’s github, so be sure you have updated your source if you are interested in compiling the code.

© 2008 infinite turtles
Designed by Lorelei for Web Hosting | Coded by Cheap Web Hosting and Web Site Hosting