Phil Hassey - game dev blog
Phil Hassey as Rambo
".. I've been there,
I know what it's like,
and I'll do it again if I have to."

iGalcon – real men use Multi-Touch! Rah!

The ever slightly changing screenshot – demonstrating multi-touch (I’m selecting the two green planets, and I’m about to send a fleet to the red planet):

I also optimized the OpenGL code quite a bit, so it’s all fast .. except for the fonts, which I can still do a bit of work on yet.  But it goes full speed with any number of ships and explosion particles on screen now 🙂

I also implemented multi-touch support in the game, which was a bit of a challenge.  See, usually when I make games, I’m only thinking about a single mouse pointer or whatever.  So, err, imagine now that you’ve got unlimited mouse pointers trying to play Galcon together at the same time.  And then imagine that you’ve got no sure way of knowing what clicks are coming from which mouse.  (The iphone docs are sketchy on this point, they say that the UITouch object will remain the same throughout the life of a touch, but then go on to say that you better not save a pointer to it.)  I might have misunderstood something entirely about that bit, but whatever.

As it turns out, it was easier to deal with MT if I just handled the events as they came and didn’t try to keep track of what touch was connected to which finger.  After a lot of messing about, and fixing a bunch of bugs in my own code, I’m now able to handle multi-touch events!  Yay!

Anyway, for those of you with exceptionally small fingers, Galcon now supports game play for people with up to 32 fingers!  As for me, I’m doing pretty good if I can coordinate two or three at once.

10 Responses to “iGalcon – real men use Multi-Touch! Rah!”

  1. pymike Says:

    Man that screenie is nice. How’d you do the background?

  2. philhassey Says:

    I took a picture of some clouds .. well .. more like 150 pictures of clouds. A few of them came out just right 🙂 Just colored it a bit after that.

  3. PoV Says:

    Good ‘ol space clouds. 🙂

  4. pymike Says:

    Ahhh coolness. Thanks 🙂

  5. pymike Says:

    Here’s one I made
    http://pymike.pyedpypers.org/files/space-background1.png

    And a darker version…
    http://pymike.pyedpypers.org/files/space-background2.png

  6. Joachim Bengtsson Says:

    FYI, the current hardware+software can only handle five simultaneous touches 😛

  7. Jt Hollister Says:

    Awesome! Unfortunately if you use more than 3 or 4 fingers I think you end up accidentally sending the ships somewhere or re-deselecting some of the planets/ships. Hehe… not much you can do about that, I think your implementation of multitouch is perfect.

  8. Trent Taylor Says:

    hey phil! I made that a rough version of that multi touch video for you.

    @jt multi touch works great as it’s one planet sending ships to another. multiple planets per finger can be done but the controls are too sensitive right now.

    but anyways, http://vegantnt.wordpress.com/2008/08/05/multi-touch-goodness-on-galcon/

  9. philhassey Says:

    Trent: cool thanks 🙂

  10. Liz Says:

    I’m totally your groupie! This is the best game – and it’s so pretty!