People spend way too much time worrying about cross-platform
capability at the outset.

I would suggest rather developing a good game for a single platform,
getting feedback, and once you have some success worrying about
porting.

Why do I say this?

a) With all the differences in form factor and physical interfaces,
the gameplay experience is significantly different across platforms.
Games are actually a lot less cerebral than most people think. Its
mainly about feeling and flow, especially on mobile... You're not
likely to be sitting for hours on end playing a game (the battery life
on your phone doesn't allow for this anyway), you just need a
distraction that you can quickly get into. When a toy doesn't operate
smoothly you don't really want to use it.

b) There is a huge market out there... It's great to try and cover it
all, but none of the guys that really struck gold worried too much
about cross platform compatibility at the outset. Take angry birds for
instance. This is a game that slowly spread across platforms. Because
it's a good brand people are actually excited when it is finally
released on their platform. You are able to create continuous new hype
for it with different roll-outs. Not to mention the fact that it makes
supporting it a lot easier because you're not being bombarded with
bugs from 7 different directions.

c) Once you actually know what you're doing and know the kind of
balance you want to achieve it's not that much more work to re-develop
the game on another platform. If you stuck to open GL the sequence of
API calls a pretty much the same (even across different languages),
and your game loop is pretty much the same. You may just have to
instantiate timers and threads, and trawling for input in a slightly
different way.

d) In contrast if you try and use some higher level platform, it never
ends up being quite as cross platform as the advertising suggests.
There are always some tricks and traps, and workarounds that you need
to pull and you can never really count on the platform provider to
focus on the issues that are important to you (even when you're a
paying customer... actually, especially when you are a paying
customer, because they have already taken your money!). So you end up
pulling so many hacks to get it all up and running, that you might as
well just have developed separate versions at a lower level. Never
mind that you are now distracting yourself by trying to get it all
operational across different platforms, rather than just getting a
great game out there.

This actually goes for most applications, not just games. Companies
spend so much time trying to roll their product out to everyone that
they back themselves into corners where there is no way to actually
provide the functionality that they want to provide and end up with
some watered down, "me too", application that anyone else could have
developed.

-- 
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en

Reply via email to