iBomber – iPhone game

Here’s another great game for the iPhone: iBomber! You play the part of a bomber in the Pacific in 1943. It’s top-down, and movement is controlled by tilting the iPhone. Bombs are dropped by hitting the ‘Bombs Away’ button. There’s a number of different powerups you can collect by touching them. The aim is to destroy pretty much everything. Ships, submarines, aircraft carriers, planes, AA guns, fuel dumps and so on.

There’s several levels, with achievements for each one. I’ve played a good few hours of it, and it’s definitely worth a paltry £1.19.

ibomber

Bookmark and Share

Star Defense – iPhone

If you’re a fan of tower defense games, then I can highly recommend Star Defense for the iPhone. You know the drill: Different types of turret, upgrades, waves of different enemies – it’s not deviating from the standard formula at all, but it’s presented nicely, seems quite balanced, and the 3D graphics are quite impresive for an iPhone. It’s definitely worth £3.49 – and it absolutely kills train journeys.

star_defense

star_defense

Bookmark and Share

AS3 BitmapData.hitTest() with rotation

I saw a tweet from @mesh today, asking about hitTest when one object is rotated. A bit of horrible hackery, and here’s the result. Warning, nasty thrown-together code! ;)

var red:Sprite = new Sprite();
red.graphics.beginFill(0xFF0000);
red.graphics.lineTo(40, 0);
red.graphics.lineTo(40, 150);
red.graphics.lineTo(0,150);
red.graphics.lineTo(0,0);

red.x = 40;
red.y = 40;

addChild(red);

var green:Sprite = new Sprite();

green.graphics.beginFill(0x00FF00);
green.graphics.lineTo(40, 0);
green.graphics.lineTo(40, 150);
green.graphics.lineTo(0,150);
green.graphics.lineTo(0,0);

green.x = 300;
green.y = 40;

addChild(green);

var useRotation:Number=10;

var redBmpData = new BitmapData(red.width, red.height, true, 0);
redBmpData.draw(red);

var useDimension:int = Math.ceil(Math.sqrt((green.width * green.width) + (green.height * green.height)));
var diffWidth:int = useDimension - green.width;
var diffHeight:int = useDimension - green.height;
var newBD:BitmapData = new BitmapData(useDimension,useDimension,true,0);
var angle_in_radians:Number = Math.PI * 2 * (useRotation / 360);
var m:Matrix = new Matrix();
m.translate((green.width / 2) * -1, (green.height / 2) * -1);
m.rotate(angle_in_radians);
m.translate(green.width / 2, green.height / 2);
m.translate(diffWidth / 2, diffHeight / 2);
var translatedPoint:Point = m.transformPoint(new Point(0,0));

trace(useDimension);
var greenBmpData = new BitmapData(useDimension,useDimension,true,0);
greenBmpData.draw(green,m);

/*var sampleGreen:Bitmap =new Bitmap(greenBmpData);
addChild(sampleGreen);
sampleGreen.x=200;
sampleGreen.y=200;
*/
green.rotation=useRotation;

stage.addEventListener(MouseEvent.MOUSE_MOVE, onMouseMove);

function onMouseMove(e:MouseEvent):void {
	green.x = mouseX;
	green.y = mouseY;

	if (redBmpData.hitTest(new Point(red.x, red.y),
	255,
	greenBmpData,
	new Point(green.x-translatedPoint.x, green.y-translatedPoint.y),
	255

	  )) {
		trace("hit");
		red.filters = [new GlowFilter()];
	} else {
		red.filters = [];
	}
}

I’ll blog a better example of this, with comments and an explanation of what it’s doing in the next few days.

Bookmark and Share

iPhone camera – 3GS vs 3G

Here’s a quick comparison of the iPhone 3GS camera versus the old 3G camera. The 3GS has a macro function, so it’s not a fair test by any means :)

New iPhone 3GS:

Photo with new iPhone 3GS using Macro

…and here’s a shot from the old 3G:

Photo with old iPhone 3G

That’s quite a difference!

However, it’s nowhere near as good as the camera on the N95, and there are some great photos taken with that phone. Still, it’s a vast, welcome improvement.

Bookmark and Share

Useful stuff: Papervision GUI, AS3 Code Snippet, UML editor, Firefox Plugin

Here’s a few useful things I’ve seen recently. Thought I’d share..

VizualPV3D

A GUI for Papervision! It looks rather similar to Lightwave, although orders of magnitude less powerful. I’ll be interested to see how this evolves. Could come in handy one day!
http://www.juxtinteractive.com/work/vizualpv3d/

Swf Class Explorer

This was a useful utility on a recent project, as there’s no “ApplicationDomain.getAllDefinitions():Array”. Worth bookmarking.
http://flassari.is/2008/07/swf-class-explorer-for-as3/

Violet UML Editor

Jon from Unwrong showed me this rather nifty UML editor. Great for drawing quick, simple diagrams. Cross-platform, and free.
http://alexdp.free.fr/violetumleditor/page.php

Talon: Firefox Plugin

A great plugin for Firefox, which allows you to right-click and capture a page (or region). From there you can upload/share/edit on Aviary, copy to clipboard, or save to desktop.
http://www.readwriteweb.com/archives/aviarys_talon_a_drool-worthy_firefox_plug-in_for_e.php

Bookmark and Share

North Wales Photos

Rachel and I spent a long weekend with my parents in North Wales, staying at my uncle’s house. Once again I was stunned by the natural beauty of the landscape.

Cwm Bychan was as spectacular as usual, and I visited Dinas Oleu for the first time, which is definitely worth visiting if you’re in the area.

As usual, I took a number of photos. Here’s some to bore you ;) I recommend going full-screen.

Bookmark and Share

Fluid Dynamics in Flash

This is one of the most entrancing Flash experiments I’ve ever seen. Eugine Zatepyakin, a Flash Developer in Moscow, has created a rather stunning fluid simulation in AS3.  It’s a fantastic toy, and really quite inspiring. I must take a look through the code when I get some time.

Fluid dynamics

Simply stunning.

It’s based on work by Mehmet Akten, which in turn is based on this paper: Real-Time Fluid Dynamics for Games.

Bookmark and Share

GUIs in Films

After posting about the Flash GUI in Star Trek, I remembered that Mark Coleran produces some stunning GUIs for films.

Check out his showreel for some really great work:

It’s at times like these I wish I could create visuals too.

Bookmark and Share

Star Trek runs Flash

TheFlashBlog has an interesting piece about Flash being used in the Star Trek film, using ActionScript 3 and AIR.

All made using Flash

All made using Flash

The strangely named OOOii have created some beautiful futuristic interfaces for films such as Star Trek, Minority Report, and The Island.

That sounds like a fantastic job! :)

Bookmark and Share

LEGO Unity game – The quest for R2 D2

LEGO.com has the best looking Unity game I’ve seen so far. 

Star Wars LEGO - Unity

Blurring the line between console and browser

Currently there’s just one level, which is split into multiple areas. It’s a fairly simple 3D platformer – run around, collect gems, jump onto platforms, attack enemies. It won’t win any awards for originality, but graphically it’s very impressive. Try playing full-screen. 

Unity can also support USB 360 controllers. I tried playing this fullscreen with a 360 controller just now, and yes; it’s almost indistinguishable from a console game from a few years ago. Really impressive work Three Melons and LEGO!

LEGO have announced they’ll be releasing a full version in August 2009, with 15 levels and 4 selectable characters. 

Thanks for finding this Ed :)

[update] Three Melons have more on their blog.

Bookmark and Share