Here’s the basic idea: each level consists of a packing brought into PointCloud Browser from the Apollonian web-service, and you have twice as many bullets as there are spheres to pop them all (which you do by aiming the cross-hairs and tapping the screen). The good news is that each time you pop a sphere you get two more bullets (an idea copied directly from the original Ball Invasion sample, along with much of its code).

What you end up with is something that is actually pretty fun – and surprisingly therapeutic… it’s a bit like popping 3D bubble-wrap – and is an interesting way to experience the internal structure of a 3D fractal. My 6-year old is now regularly pestering me to let him play it, which I take as a good sign. :-)

Here are some screenshots:

Here’s a video of me playing the game. It was a bit tricky capturing what was being shown on the iPad and playing the game at the same time, but it settles down after about a minute (please don’t give up on it straight away).

The game has a few quirks that I haven’t yet ironed out: some spheres just end up being impossible to shoot, which I’m guessing is due to the (usually invisible) base plane stopping the bullets from reaching them. It should be simple enough to fix, but please don’t get too frustrated if this happens to you.

I’ve also left the game open-ended: the levels just keep on going. The Apollonian web-service will only serve up packings for up to level 10, but I’ve in any case found that my iPad 2 slows down in a big way when it gets to level 5 (with 989 spheres) and is basically unusable at level 6 (with 2,837). It may be that more recent iPad devices manage later levels very well, so I haven’t capped them at all.

I do wonder whether gamifiying design work is an interesting concept or not (I mostly suspect not, but I could well be wrong). Very interestingly two of the entrants of the APPHACK at AU 2012 were focused on the idea of gamifying AutoCAD usage, providing awards, etc. when you use certain commands. Perhaps gamifying augmented reality clash detection in BIM 360 or in-place analysis via Simulation 360 would be fun and compelling (and yes, I’m pulling these examples out of thin air, so there’s really no need to tell if you find them ridiculous).

Anyway, here’s the code. I’ve avoided a separate JavaScript file (which I’d probably have used under normal circumstances for the bulk of this implementation) to make it simpler to post here.

You can load this page directly in the PointCloud Browser by entering the following in the application’s address-bar: http://autode.sk/apparg.