Apple blesses the use of Flash / Unity on iOS

Today Apple announced a change to the App Store developer terms of service (TOS) to officially approve the use of third party development environments when publishing to the App Store. This notably sensitive subject began stirring up serious worry back in June.

As noted by John of Daring Fireball on June 8th, Apple modified their terms of service to include a very worrying section. It stated:

“Applications must be originally written in Objective-C, C, C++, or JavaScript as executed by the iPhone OS WebKit engine, and only code written in C, C++, and Objective-C may compile and directly link against the Documented APIs (e.g., Applications that link to Documented APIs through an intermediary translation or compatibility layer or tool are prohibited).”

After a massive uproar from the iPhone development community and game development community, Steve Jobs publicly responded to an email by stating:

“We’ve been there before, and intermediate layers between the platform and the developer ultimately produces sub-standard apps and hinders the progress of the platform.”

At that time, knowing Apple’s stance on the subject, thousands of small (and large) businesses were in major jeopardy, having put trust in Apple’s development platform before the proverbial rug was pulled out from under them. Users of Unity3D, a cross-platform game development engine, expressed outrage, compiling a list of top App Store games and apps that violate section 3.3.1 of Apple’s TOS, attempting to show what a huge mistake it would be to ban such a lauded tool. The futures of developers using tools such as Unity3D (MONO), MonoTouch (MONO), Corona SDK (LUA), Flash (ActionScript), MIT’s Scratch (Scratch), and GameSalad (?) were ‘uncertain’ at best.

On September 9th (today) Apple backpedaled and released a press release basically amounting to ‘Whoops! We’re sorry!’ and dropping the whole argument regarding compatibility layers. Apple might not realize the impact of this decision, thinking this is a minor concession to make some users happy, but it is my feeling that this choice has extended the viability of the iOS platform by a massive amount.  Users aren’t quite leaving Apple in droves to move to Android as some have been predicting. I bet Adobe is glad they didn’t cut their iOS packager from CS5!


iPhone game to iPad – User interface considerations

I recently began porting my iPhone game SpringFling to iPad. The most time consuming part so far has been working with the art assets to make them work on the new screen size. I had stupidly designed most of the UI for the game at native resolution (480 x 320 px) which forces me to now re-do much of the art at 1024×768. Instead of just re-creating the exact menus at a higher resolution, I’m taking this chance to re-design certain areas of the menus.

I’ve noticed an issue with some iPad games that have been ported from the iPhone version. It seems the developer, in an attempt to reuse the same art assets, keeps HUD and UI elements the same size but ends up with huge areas of empty space and useless padding. Contexts with very little info end up taking the whole screen, making the overall composition feel lonely and awkward, like sparsely placed townspeople in a model train set.

By forcing myself to re-design certain areas, it will (hopefully) help ensure a smooth and appropriate user experience on the iPad.

Here is my progress so far:

And no, I haven’t gotten around to fixing the in-game HUD imagery yet. I’ll get to it soon, nagging Nancy.


iPad game LineBloom created at DinoJAM

This past Saturday and Sunday I had the fortune of attending the second ever DinoJAM. This event was co-hosted by Emily Daniels and Darren Torpey at the DINO/Sprout space in Davis Square. Right after wrapping up at 3d Stimulus Day, made my way up to Somerville to make some games.

This is what I came up with (made in Unity):

It definitely translates well to the iPad touch screen. Just draw lines and they appear. It feels pretty fluid, but the low framerate video capture doesn’t convey that very well.

Thanks to Lawrence Lee for the epic music – Berkeley musicians make some good stuff quick! Props to the game jam musicians out there.

Congrats to the other attendees for making some seriously cool stuff. Great games/projects all around , and thanks for live-tweeting (@demiurgestudios @acosmos @jdemond @emdaniels @darrentorpey @davidludwig @boodooperson)