Shared publicly  - 
 
Taking into account HTML5 is not there yet and Flash10 is the main web target! If you had the opportunity to build from scratch a social cross platform game, for web and mobile apps. What languages would you use? AS3 (AIR) or haXe (NME)? Or use C++/Java/ObjectiveC for the mobile targets?
3
1
Benjamin Jordan's profile photoSean McCracken's profile photoCorné Dorrestijn's profile photoTim Keir's profile photo
16 comments
 
It really depends on the type of the game
 
The only Web + Mobile solution at the moment I would say is Unity3d. For game development Flash is just not there yet (unless it's a super super simple game that doesn't have much movement). If you are just doing a 2d game though Flash is still the best for web and then for mobile I would probably use something like Corona. Native is awesome and I love developing in iOS, but for games speed and cost are major issues, and having to make 2 builds of the same game is just too much to deal with.
 
I would avoid AIR too and would getting native first (Java, Objective C, ...) and evaluate haXe later on a second game as an option or maybe in parallel development of two games.
 
I'm creating a game using haXe (NME) atm. everytime i compile i compile to SWF and C++ at the same time so i can test if they both work. Still some bugs, like fillRect(); and setPixel() not working in hardware rendering (setPixel32 does work). If your'e using AIR it just works. But i gues it will be a little slower. You could do both, Make a game in haXe and compile it to SWF, CPP and AIR
 
I wouldn't do native at any cost, best options is Unity which is native and AIR you can do a lot of good games with AIR and have amazing performance if someone says otherwise I would ask them if they really tried it out.

As for Corona it's just to new.

No matter what native will always be better but its not worth it you locked into one platform and have different code builds.

When it comes to causal games the market is very competitive and today its all about having your game available everywhere.

AIR is perfect for this just looking at some of the best iPhone games there not to complex or 3D, and with AIR you get lots of app stores and you can demo a online I think that's going to big in the future its the same thing as free premium.

Yes AIR is lacking lots of features but right now its the only things that offers the most, I go to lots of games events every that I talked are looking into AIR now especially with native extensions and most of the people that I talk with are writing native or using unity.
 
At this point i'm not sure i'll use flash (as3+air+crosscompiling) due to a rising fragmentation on devices (new api sometimes are still there, sometimes no, support of gpu is different from device and device, this just overhead the QA phases ... no sense to claim it as a crossplatform solution, not to talk about linux give up).
I would dig into unity3d instead or somethink like that.
haXe lacks of case studies and in general of a huge community compared to flash or unity.
 
At this point i'm not sure i'll use flash (as3+air+crosscompiling) due to a rising fragmentation on devices (new api sometimes are still there, sometimes no, support of gpu is different from device and device, this just overhead the QA phases ... no sense to claim it as a crossplatform solution, not to talk about linux give up).
I would dig into unity3d instead or somethink like that.
haXe lacks of case studies and in general of a huge community compared to flash or unity.
 
I'm a stubborn Flash Developer so I will try to give AIR a go on two games I'm working on (personal projects) but for work I've been using Objective C on iOS (both for games"Cocos2d" an apps) currently trying haXe for its multi-platform features and Corona seems to be good and easy to grasp on.
 
i think it depends on what you are doing: how complex it is, where it will eventually live (what platforms, etc) and the level of execution and quality you want. if you are an experienced flash/air developer then your best bet would be air because learning native platforms (if you dont already know them) takes time, especially learning all the nuances of the frameworks, approaches, etc. and i think you are likely to create a better experience with what you know.

also, some tools, air for example, offer a lot of flexibility in target platforms: i could develop in AS3 for iOS, Android, Web, Desktop, and TV. as a single developer that makes a lot of sense if those platforms are my target.

That's not to say native isnt a viable option, you just need to learn the language, practice, and find ways to make your code modular enough to port if multiple platforms are your target.
 
It really depends on what the game is, but for 2d I would probably use haXe or AS3, for 3d I would use Unity.
 
haXe. For mobile, native target(eg: haXe->C++) instead of Flash.
 
haXe and AIR aren't mutually exclusive, they play quite nicely together. AIR 3 will be an attractive alternative to NME if it gets Molehill.
 
I'm going to vote HaXe, although I've only recently gotten into it and I haven't deployed any products with it yet. Having said that the perks certainly weigh in it's favour.
 
I'd prefer to develop in C# and deploy it everywhere (Desktop, HTML5, Flash, Android, iPhone). I know, that's kind a fiction xD
 
+Daniel Kuschny Unity uses C# but if you're not making games it's not the best option. C# is a great language, it's too bad Mono/Mono Touch don't get more attention. It is possible to deploy to Mac/Windows/Linux desktop, Mac/Windows browser, and iPhone, Android, and Windows Phone 7 with Mono/.NET but there may be some more significant changes you need to make to your code for each platform. I've never tried Mono Touch or Mono for Android so I don't know how performance compares to AIR or how compatible the API is across multiple platforms. The last time I looked at Mono it was pretty far behind .NET unfortunately.
Add a comment...