Jump to content

  • Log In with Google      Sign In   
  • Create Account

Awesome job so far everyone! Please give us your feedback on how our article efforts are going. We still need more finished articles for our May contest theme: Remake the Classics

Like
0Likes
Dislike

Getting your app on Intel AppUp: Porting "Ancient Frog"

By Intel | Published Jan 18 2011 11:00 PM in Interviews

If you find this article contains errors or problems rendering it unreadable (missing images or files, mangled code, improper text formatting, etc) please contact the editor so corrections can be made. Thank you for helping us improve this resource

This is a sponsored post paid for by Intel

The following is a continuation in a series of articles on bringing your app to Intel <a href="http://altfarm.mediaplex.com/ad/ck/12124-114967-26654-5?mpt=[CACHEBUSTER]">AppUp</a>[imgtrack]http://altfarm.mediaplex.com/ad/tr/12124-114967-26654-5?mpt=[CACHEBUSTER][/imgtrack], Intel’s app store for Intel Atom™  based mobile devices. This is an interview conducted by Bob Duffy,  Intel AppUp Developer Community Manager with developer James Brown on  his experience in bringing his award winning game "<a href="http://altfarm.mediaplex.com/ad/ck/12124-114967-26654-6?mpt=[CACHEBUSTER]">Ancient Frog</a>[imgtrack]http://altfarm.mediaplex.com/ad/tr/12124-114967-26654-6?mpt=[CACHEBUSTER][/imgtrack]" from the Intel AppUp center.

If you’re interested in learning more about developing for Intel AppUp, we invite you to enroll in our <a href="http://altfarm.mediaplex.com/ad/ck/12124-114967-26654-5?mpt=[CACHEBUSTER]">AppUp developer program</a>[imgtrack]http://altfarm.mediaplex.com/ad/tr/12124-114967-26654-5?mpt=[CACHEBUSTER][/imgtrack] today. You should also consider competing in our <a href="http://altfarm.mediaplex.com/ad/ck/12124-114967-26654-7?mpt=[CACHEBUSTER]">challenge, which awards cash prizes on a monthly basis</a>[imgtrack]http://altfarm.mediaplex.com/ad/tr/12124-114967-26654-7?mpt=[CACHEBUSTER][/imgtrack] to the best apps in select categories.


Q. What was you inspiration for the game?

James Brown:  Ancient Frog was born out of my departure from the mainstream games  industry. My background was very broad - designer, programmer, artist,  producer. But the games industry had become huge and stratified, and I  ended up at Lionhead / Microsoft as a manager of a team of programmers  with no real creative input, which was about as far from my ideal job as  I could imagine.

I decided to start my own games again. I was  led to the idea for Ancient Frog by the constraints I had set myself. I  needed a game small enough that it could be completed to a professional  standard by a solo developer. With a puzzle game, once you've nailed the  puzzle mechanic, the rest is just variations on that theme. I also  wanted a central character, cute without being cutesy, with a bit of  personality to it. Since I'm not an animator, which set me looking into  procedural animation systems, and the idea of a rock-climbing game  involving a gecko sort of coalesced out of that.

Once I'd thrown  together a stick-figure prototype, the idea morphed and evolved as I  played around with it. The gecko became a frog because frogs have longer  legs at the back than the front, which introduces some interesting  decisions for the player. The climbing aspect faded out to the slightly  more abstract stepping-on-droplets idea. The animation system became  more explicit - you don't drive the frog, you drag one limb at a time -  which both made it a more interesting puzzle, and meant that the player  was the one creating the animation, rather than the game.

It was  quite a prolonged journey from that initial prototype to the final game  (during which time I changed country and spent a while building digital  interactives for museums), but it the fundamental idea remained very  clear in my mind throughout.


Q. How did you deal with hardware differences such as multi-touch vs mouse & keyboard and accelerometer in the iPhone?

Ancient  Frog doesn't really use any hardware that can't be replicated with a  mouse or trackpad. I do use the accelerometer to influence the direction  the petals fall in the 'win' animation, but it's hardly a game-breaker  to lose that. Multitouch is used on the iPad version so that you can dip  more than one finger in the water at once - again, no big deal to lose  out on that.

On the touch-screen versions of Ancient Frog, the  game starts with an introductory tutorial which takes control away from  the player. This is admittedly annoying to some players (but  play-testing had shown it was necessary to teach some of the control  gestures). But for some reason, on a machine with indirect control - a  mouse or trackpad - it becomes completely unacceptable. I'm not sure why  - possibly it's that not responding to a touch is something that's  always context-sensitive, and so expected, while not responding to the  mouse feels more like the machine has hung, and is not expected.

At  any rate, I had to change the tutorial to be a more hands-off piece of  advice. I also removed the gestural 'undo' and 'redo', partly because  gestures are awkward on a mouse/trackpad device, and partly because the  increased screen space means there's room for on-screen buttons. Having  buttons on the screen also means the player is encouraged to play with  them to see what happens, which removes some of the load from the  tutorial.


Q: Did anything surprise you about the  porting process – harder than you thought, easier than you thought? Did  you lose or enhance features for the Netbook?

The approach  Ancient Frog uses to create its look, with multiple blending passes, is  very fill-rate intensive. I'd had a hard time of it on the iPad port,  which I'd done just before the netbook version, because the iPad's GPU  simply can't handle that much overdraw. I had to put a lot of work into  baking the lighting in to the textures, removing elements from the  layout, and generally slashing it down so that it would run. So I was  worried, coming to the netbook version, that I'd have the same problem.  As it turned out I was pleasantly surprised by speed of the integrated  graphics chip, and I didn't need to cut anything.


Q: How do you compare the game play between the devices?

The game play is essentially the same on all devices. On the handhelds,  the look of the levels is simplified - they just have one layer, and are  cropped tightly in to make the most use of those tiny screens. On the  netbook versions there's more room for the frogs to breathe, and some  playful background elements to prod at. But apart from some small tweaks  to the difficulty progression, the puzzles are identical.


Q:  Did you require any support from Intel in the process? How was the  submission process & support for Intel AppUp center compared to  other stores?

The whole process was straightforward. I had  one validation failure because I'd managed to build against an old  version of the SDK, but after that everything just sailed through.


Q: Would you do anything differently or do you have any tips for developers looking to port to Intel AppUp?
  
The  only thing I'd do differently would have been to do it sooner. There's  so little effort involved in building for the AppUp Center, and I'm  really excited to see where it goes.
  
The best advice you can  have for porting from iPhone to AppUp is to build your iPhone app with  porting in mind from the beginning - use straight C++, and avoid the  Apple-specific APIs. If you've already finished your iPhone version and  you're wondering whether it's worth the work refactoring it to be more  platform-independent, there are benefits for the original code quite  apart from having a new port. Different devices tend to expose different  subtle bugs, and since the code is the same across all platforms, the  fixes you make will benefit every version.
  
If you're going to  build for both iPhone and AppUp, it makes sense to treat AppUp as your  primary target during development. You want to be able to iterate  quickly, and debugging to a netbook is considerably faster than the iPhone simulator or downloading to the physical hardware.


To read an extended interview with James Brown, <a href="http://altfarm.mediaplex.com/ad/ck/12124-114967-26654-6?mpt=[CACHEBUSTER]">please visit our blog</a>[imgtrack]http://altfarm.mediaplex.com/ad/tr/12124-114967-26654-6?mpt=[CACHEBUSTER][/imgtrack]. And don’t forget to <a href="http://altfarm.mediaplex.com/ad/ck/12124-114967-26654-5?mpt=[CACHEBUSTER]">enroll today</a>[imgtrack]http://altfarm.mediaplex.com/ad/tr/12124-114967-26654-5?mpt=[CACHEBUSTER][/imgtrack] to get your apps on AppUp!





Comments
Participation in the AppUp challenge is of interest, except that its been closed for a while now :)

Note: Please offer only positive, constructive comments - we are looking to promote a positive atmosphere where collaboration is valued above all else.




PARTNERS