是否有类似于XNA的Android或iOS开发框架?

3
我想开始为Android / iOS创建游戏。我已经使用XNA创建了2D游戏,并希望将它们发布到其他平台,甚至是PC,但我的首要任务是移动平台。正如我所说,我熟悉XNA,因此我需要一个类似的2D引擎。如果我可以写一次并在多个平台上发布,那就太好了。请不要建议Unity或Unreal。对于2D来说,它们并不那么容易。
所谓相似,比如,在屏幕上轻松绘制精灵。
注:我正在Windows上工作,因此请勿提供Mac建议。
问候,

你是什么意思?我认为这比XNA更难。 - Ahmad Baracat
有没有机会选择一个答案。 - Dominique
8个回答

7
您可能还想考虑MonoGame(https://github.com/mono/MonoGame/),因为它也是一个开源的OpenGL实现XNA,目前支持iOS、Android、MacOS X、Windows和最近的Linux。在移动平台上,它现在全部采用ES 2.0。我们最大的改变是现在支持Windows 8,并且由于SharpDX的支持,有了DirectX 11后端。我们现在还有初步的PlayStation移动支持。
实际上,ExEn是MonoGame(最初称为XNATouch)的一个分支。
要查看AppStore或Android Market Place甚至NaLC上使用MonoGame的游戏列表,请点击这里 - http://monogame.codeplex.com/ 希望这能帮到您。
D.

需要每个iOS和Android的$400 MonoTouch。 - Andy Dent

4

您可能希望关注名为ExEn的项目,该项目已成功将某些XNA示例和较小的游戏移植到iPhone和Android上。将这些游戏移植并进行了重构需要相对较少的工作。


安卓的实现完成了吗?我记得他们刚刚为此筹集完资金。此外,这是项目主页的链接,而不是筹款页面:http://andrewrussell.net/exen/。 - slayton
我已经查看了它,但首先它还不支持Android系统,其次我找不到下载和使用它的方法。 - Ahmad Baracat
第一个公开预览版(仅适用于iOS)在此处可下载。第二个公开预览版,将支持Android,并将很快发布。(或者您可以加入预发布计划,立即开始使用Android版本)。 - Andrew Russell
在将Chicks'n'Vixens移植到iOS时,使用它非常好用,点赞! - meds
@Bacarat,与iOS和WP7相比,Android是一个非常不连贯的平台,因此在所有当前设备上正确实现该应用程序存在一些困难。项目作者已经表达了他对Android操作系统的不喜爱:P - Chris C
据我所知,ExEn的开发已经停滞了:http://andrewrussell.net/2012/03/the-future-of-exen/ - Jonas Sourlier

2
我建议您查看AndEngine,它是一个开源的2D OpenGL游戏引擎,拥有强大的社区支持。如果您想要制作跨平台游戏,请查看LibGDX,它也是免费的、开源的,并基于OpenGL,但它还允许制作3D游戏。它也是跨平台的,因此您为Android编写的游戏可以编译为Windows、MacOS(见下文)、Linux等。它还拥有非常强大的社区支持。
关于iOS和OSX游戏,除非您购买Mac,否则无法制作这些游戏。苹果不会为其他平台提供他们的SDK。尽管如此,您可能可以在VMWare下运行一些东西。

但是当我有了Mac,我能把任何这些编写的代码移植到iPhone上吗? - Ahmad Baracat
不好意思,那两个引擎目前只适用于Android。如果需要iOS/Android游戏引擎,请查看此帖子:https://dev59.com/eG865IYBdhLWcg3wFqdV - slayton

1

看看MOAI SDK。它完全免费且开源。现在还处于测试版,但已经相当不错了。Crimson Pirates for iOS就是用它开发的。

目前它支持iOS、Android、Mac、Windows和Linux。真的很好。我曾经喜欢过Cocos2D-x,它是Cocos2d-iphone的C++变体,支持Windows、iOS(不支持Mac)和Android,但不支持桌面应用程序,这让我更喜欢MOAI。

你可以使用C++编写MOAI,也可以使用Lua(他们强烈建议使用Lua)。由于它是用C++构建的,因此您可以访问大量库,并将它们轻松绑定到Lua。


如果你是Lua开发者,这看起来很有吸引力,但截至2012年1月,它没有调试器或模拟器http://getmoai.com/forums/moai-roadmap/moai-ide/,这让我失去了兴趣。 - Andy Dent

0

我在过去几周里进行了深入的研究,关于这个主题。

我认为最适合你的解决方案是Marmalade,之前被称为Airplay SDK。它实际上比Mac更加面向Windows(在Visual Studio中工作),尽管你仍然需要Mac来完成将签名应用程序放到商店的最后一步。它听起来是一个非常有能力的纯C++产品,支持iOS和Android以及其他一些平台,个人许可证带有闪屏,每年150美元,单个专业席位每年500美元,适用于所有平台。他们有一个45天的试用许可证,我目前正在使用。

我曾经被MonoGame所吸引,可以接受每个平台400美元的价格标签(需要MonoTouch),但它实在太容易出现错误了。最后的压垮骆驼的稻草是一个错误导致它在iOS5上崩溃所有示例,以及键盘输入在iOS上失效

说实话,我相当确定这完全是MonoGame的问题,对MonoTouch的工作效果印象深刻,很期待能用C#和LINQ等进行编程。

0

对于那些不知道的人来说,需要注意的是ExEn项目和MonoGame项目都建立在Xamarin(以前是Novell)的Monotouch平台上 - 这是iOS游戏的先决条件。

Xamarin项目被提及为Xna的替代方案,但实际上并不是。Monotouch和Mono for Android是在iPhone / iPad和Android上运行C#和.NET的方法。

至少在iPhone方面,游戏开发通常使用OpenGL,并且OpenGL也包含在Monotouch中。据我所知,Exen和MonoGame中的Xna实现也使用OpenGL作为基础。

还应该注意,Monotouch和Mono for Android是商业产品。

顺便说一句:Exen还可以编译到其他平台,例如silverlight。


0

你应该尝试使用cocos2d进行游戏开发。

cocos2d是我所接触过的最好的iOS/Android 2D引擎之一。 http://www.cocos2d-iphone.org/

它是基于OpenGL的免费引擎。

祝好, Sam


值得指出的是,引擎的Android版本并非由制作iPhone版本的同一组人编写。Android小组正在尝试实现相同的API,但Android版本不是官方移植版。 - slayton
你也可以在Android上使用cocos2d-x(C++版本)。这是由中国联通支持的,因此很可能是一个可靠的选择,并且当然包括许多其他平台 - http://www.cocos2d-x.org/projects/cocos2d-x/wiki/Platforms_supported_by_cocos2d-x - Andy Dent

0

这些可能对你有用。然而,前两个不是免费的,但它们都有iOS和Android版本。

iOS: http://ios.xamarin.com/

Android: http://android.xamarin.com/

我从未使用过它们中的任何一个,但这是我一直在研究的东西。显然,它可以让你在iOS和Android上运行C#和.NET代码,考虑到在XNA中绘图和其他类似操作比Open GL ES 2.0更容易,这非常酷。更不用说你将使用C#而不是Objective C。

还有一个由与我上面列出的两个相同的公司赞助的免费开源版本。这个版本可以让你在Windows、Linux和Mac OS X上运行C#和.NET代码。

http://www.mono-project.com/Main_Page


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接