Aug 21
A brief hiatus
First, sincere apologies for having been so quiet for so long. Real life stuff came up, and I’ve been working to ensure that I can keep creating fun projects here in the future. I expect that my posts are going to be pretty scarce for the next few weeks as I continue to sort out plans for the future. But there’s no reason to panic; I’m positive that things will work out fine in the long run. And for the record, I have nothing but good things to say about my employers, even under current circumstances, and I’m crossing my fingers that I get to keep working for them for a good long time.
But enough of that gloomy topic — time for a unicorn chaser. Look, it’s VectorStorm running on an iPad! (And also on the iPhone, not pictured here) Long-time readers may recognise this as the “Testbed” program from the main VectorStorm library (with the orbiting lights moved closer in, to be easier to see). There’s still a lot of work to be done on this port (which I’ll eventually do), mostly for supporting textures and audio. But I was really pleased with just how easy it was to do the bulk of the port. It was a lot simpler than the last time I did this, back when VectorStorm only drew lines, and rendered everything using OpenGL’s “immediate mode” rendering.
Also unlike last time, this time I did the port without obliterating the PC and Mac version of the code, so it should actually be possible to commit this back into trunk and have games just automatically be able to run on all three platforms. Of course, there’s a lot of work that would need to be done to actually release a game on iPhone/iPad, both technical (it’d have to support changing screen orientation, the iPhone 4 retina display, iOS4 multitasking, multitouch input, etc), and legal/organisational (setting up a company to use for publishing, etc).
No, there’s no chance that MMORPG Tycoon 2 would run acceptably on any of these devices (although you’d better believe that I’m going to compile and run it once, just to giggle at the terrible frame rate), but I might eventually compile up some of my older games, or potentially future “Game in a Week” titles, and put them up on the App Store just to see what happens.

August 22nd, 2010 at 6:45 pm
Please don’t forget android its one of the fastest growing markets out there
August 22nd, 2010 at 11:23 pm
It’s a really good thought, but sadly, Android apps are programmed in Java, while VectorStorm is written in C++; the two really aren’t compatible. It’s true that Google have an “Android NDK”, where ‘N’ stands for ‘Native’, which lets you write some portions of your program in C or C++, but from what I’ve read, you can’t call into platform APIs from native code; native code can only be used for internal, computationally-expensive tasks (physics, etc), not for drawing to the screen or taking inputs or playing music or etc.
In short: to make VectorStorm run on the Android platform, I’d have to rewrite a lot of it in Java (which I don’t actually know), and then would have to spend time maintaining and keeping two versions of the library in two different languages in synch with each other… It’s not impossible, but it’d take a lot of time and effort that I could probably spend in more productive ways.
For me, it’s much simpler and more efficient to just cross-compile a single set of C++ code onto Mac/PC/iPhone. And more efficient means that I can make more games.