开发者_如何学编程
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 5 years ago.
Improve this question in my company I was asked to choose a cross-platform gaming tool so we can develop games that can work on Android and iOS (iPhone). PC would also be nice.I know Xcode well (c/c++/c#)
It can be 2d or 3d.
After some reading, I found Unity/openGL/cocos2D as main tools.
What's the best one you can recommend? The easiest to learn?
Can I develop good 2d games in Xcode anyway?
And what's the most popular cross-platform one?
Thanks a lot.
Cocos2D
Cocos2D is brilliant. It's simple, fast, and it's easy to use.
But it isn't truly a cross-platform tool -- they have versions of it for Android, iOS, Mac, and PC, but it's not a simple "write once, run anywhere" proposition. Games will have to be re-written in Java for Android, for example, and in Objective-C/C++ for iOS.
Unity
Unity is much closer to a true cross-platform gaming engine. You can re-use most of your game logic and code because they're written in Javascript or C#, which then runs in a runtime environment on the specific device. It provides cross-platform capability for PC, Mac, iOS, Android, and even Wii/XBLA.
Unity is really designed for 3D games, and that's where it excels. It's pretty simple as far as 3D engines go and there is a great community.
One downside is that you are pretty limited in what you can do with native device features, like the iPod library on iOS. You have to essentially "call out" to objective-C code, which is really complex.
OpenGL
Writing straight OpenGL means a lot of heavy lifting and re-inventing the wheel. Unless you're experienced in 3D programming or for some reason the other options don't meet your needs, I strongly advise not writing straight OpenGL.
Unreal Engine
The Unreal Development Kit/Unreal Engine is another option, but it doesn't support Android. It does support PC and iOS though, and it's probably the most powerful engine you can get. Games like Infinity Blade use it to create astoundingly realistic experiences on iOS.
Corona SDK
Corona, as mentioned in another answer, is another good choice, but it's strictly 2D only. Games are written in Lua and then compiled to the native OS. It's simple and easy to use, so if you're writing small, basic games, this would be a good choice.
It sounds like you first of all need a development tool that can export code for Android, Iphone and PC.
Corona SDK is a very popular tool. It has a easy to use scripting language called Lua and built in physics and collision detection. http://www.anscamobile.com/corona/
Then there is PhoneGap which uses html5, css and javascript as language. http://docs.phonegap.com/
Corona seems to be better suited for game development since it got a lot of built in features used in games. PhoneGap seems to be suited better for regular applications, but it can export to more platforms.
精彩评论