针对Android和iOS的2D跨平台游戏引擎?(2D cross

编程入门 行业动态 更新时间:2024-10-24 16:28:55
针对Android和iOS的2D跨平台游戏引擎?(2D cross-platform game engine for Android and iOS? [closed])

我已经在Unity3d工作了一段时间,发现它是与OnGUI()或GUITextures二维部分太笨拙。 此外,即使是在Unity3d上完成的最小游戏,至少有10MB的下载,这对2D游戏来说太多了。

所以,我正在寻找2D的引擎。 我已经尝试过Cocos2D,但它只是iOS,我不想将所有内容重写为Android的另一种语言(因此,例如,适用于Android的Cocos2d的Java端口不是一个选项)。 相反,我想编写一次代码,最少的麻烦是将其部署在iOS,Android和Windows Phone 7上。我同时拥有Mac和Windows。

只是为了更详细,这里是我对引擎的要求:

必须跨平台 必须高效 应该是C ++,Java,C#或Objective C,因为我很满意他们,而不是 Flash,Javascript,HTML5,因为我不是一个网页开发者 必须有一个很大的社区,教程,额外的图书馆,涵盖了直接在iOS或Android上开发的大部分内容(应用内结算,Facebook等) 最终交付的包装不得太大 发动机可以自由,但我也不介意支付合理的价格

我找到了以下引擎:

果酱 (和它的IwGame引擎 ) - C ++,发现总体非常积极的评价果酱,但不确定IwGame。 编辑(2013年3月) :看起来像Marmalade SDK现在包括Cocos2Dx和一些内建的IDE,这使得它更好(并且每年为indie dev花费150美元,这对我而言)。 Corona SDK - Lua(效率可疑),也需要互联网连接来编译代码 Cocos2d-x -C ++,从开发人员那里收到很多评论,大多数是积极的,许多人认为最适合2D 粒子代码 - Java + Eclipse,没有发现任何评论或意见 Moai - Lua,coudn没有找到任何评论/意见 猴子引擎 - 似乎有太少的功能 Haxenme - 它是Flash,我从来没有使用它,不想 使用Unity3d,但与2D工具包二维包 SDL到Android的端口(也在这里 )和iOS - 不看起来没有太多的支持或当前的开发(?) GLBasic - 基本语言,我不喜欢它 playN - 似乎早在发展(?) Gamvas - HTML5,看起来不像我成熟的引擎 Ignifuga - Python,也看起来不成熟 ORX - 不知道它是否仍然开发(?) 构造2 - 提醒GameMaker,可能对快速原型确定,但绝对不适用于行业级游戏 XNA然后使用ExEn端口游戏(将需要单声道端口到iOS和Android的Mono端口到Android) - C#,可能更多的思想来自微软产品,如xBox(我来自Android)的人。 此外,这些Mono工具总共为小型开发人员花费800美元 影响力 - JavaScript,使用HTML5。 我不是很多的JavaScript(例如Unity3d的首选C#),也不能确定效率,因为它在浏览器中运行(?) GameMaker - 自己的脚本语言GML和我实际上记住这个作为非程序员的工具。 它实际上是否成长为一个真正的引擎,我的意思是认真的发展? AppGameKit - C ++,似乎仍然很新。 还没有找到任何评论 使用Cocos2D和Objective C开发iOS版,然后使用Stella SDK为Android制作APK。 有没有人这样做? 我确定会有局限性,Google在Android上的应用内结算,AdMob和Facebook的整合方式如何? Moscrif - JavaScript,看起来更像是以前的网络开发者 Starling - Flash 11,我没有太多的Flash ND2D - 还没有1.0,它有很多功能?

所以,如果您可以根据您的引擎体验进行评论,我会很高兴,并建议列表中的哪一个(或任何我错过的内容)对于描述的要求是最好的。 我对我的一些引擎的第一印象也可能是错误的。

我目前正在考虑Marmalade + IwGame是最好的选择,但由于我没有太多关于Cocos2d-x和Particle代码的信息,我不太确定。

谢谢!

编辑(2013年6月) :到目前为止,我做了两个跨平台的2D游戏,并使用Unity3D与2D工具包插件两者。 对于使用简单GUI的游戏,我使用了一个基于Unity自己的简单的自制GUI系统。 对于更复杂的(例如GUI元素可以重叠),我使用了NGUI插件。 最近2D工具包为GUI添加了一些更多的类,这是非常方便的,因为在将NGUI与2D Toolkit组合时,必须使用2个不同的系统进行纹理映射。 我一定会在下一个2D游戏中尝试一下。 选择Unity3D进行2D游戏的主要原因是我已经深入Unity3D,无论是经验还是累积的重复使用的代码片段。 另外,我购买了用于3D游戏的Unity3D pro(带有Android Pro和iOS Pro),只需为2D工具包支付额外的$ 60即可获得2D游戏,这一点也是非常有道理的。 我迄今为止不后悔我的决定,似乎对我来说是最佳的。 让我头疼的唯一的事情是使用Prime31的插件(Android和iOS社交插件)添加社交功能,但我认为他们的错误不是Prime31的错误,而是Twitter或Facebook的错误,所以我可能会看到相同的错误任何其他引擎或插件。

编辑(2014年1月) :我猜Unity 4中我的问题的答案是非常明显的:Unity的新的精灵系统,也许还有2DToolkit可以完全打败别人,特别是对于像我一样在Unity上的人一段时间并使用附加组件购买了Pro版本。

I've worked for some time with Unity3d and found it's 2D part with OnGUI() or GUITextures too clumsy. Also, even a smallest game done on Unity3d is at least 10MB download which is just too much for a 2D game.

So, I'm currently looking for an engine for 2D. I've tried Cocos2D but it's iOS only and I wouldn't like to rewrite everything into another language for Android (so, e.g. Java port of Cocos2d for Android is not an option). Instead, I want to write the code once and with least hassle deploy it on iOS, Android and possibly Windows Phone 7. I have both Mac and Windows.

Just to be more detailed, here are my requirements to the engine:

must be cross-platform must be efficient should be C++, Java, C# or Objective C since I'm comfortable with them and NOT Flash, Javascript, HTML5 since I am not a web developer must have a large community, tutorials, additional libraries which cover most of the stuff you'd have when developing on iOS or Android directly (in-app billing, facebook etc.) the final delivered package must be not too large the engine can be free, but I also wouldn't mind paying a reasonable price

I've found the following engines:

Marmalade (and IwGame engine on top of it) - C++, found overall very positive reviews of Marmalade but not sure about IwGame. EDIT (March 2013): Looks like Marmalade SDK now includes Cocos2Dx and some in-built IDE which makes it much better (and costs $150 per year for indie dev which is ok with me). Corona SDK - Lua (efficiency doubtful), also needs internet connection to compile code Cocos2d-x - C++, received lots of reviews from developers, mostly positive and many think it's best for 2D Particle code - Java+Eclipse, found no reviews or comments Moai - Lua, coudn't find any reviews/opinions on it Monkey engine - seems to have too few features Haxenme - it's Flash, I've never used it and don't want to use Unity3d but with 2D packages like 2D Toolkit ports of SDL to Android (also here) and iOS - doesn't look to have much support or current development (?) GLBasic - Basic language, I don't like it playN - seems to be early in development (?) Gamvas - HTML5, doesn't look like a mature engine to me Ignifuga - Python, also doesn't look mature ORX - not sure if it's still developed (?) Construct 2 - reminds GameMaker, might be ok for rapid prototypes but definitely not for industry-level games XNA and then port the game using ExEn (would need Mono Touch to port to iOS and Mono for Android to port to Android) - C#, and is probably more thought for folks coming from Microsoft products like xBox (I come from Android). Also, those Mono tools cost $800 in total for small developers Impact - JavaScript, uses HTML5. I'm not much into JavaScript (e.g. preferred C# on Unity3d), also not sure about efficiency since it runs in the browser (?) GameMaker - own scripting language GML and I actually remember this one as a tool for non-programmers. Has it actually grown into a real engine, I mean for serious development? AppGameKit - C++, yet seems to be still pretty new. Haven't found any reviews on it use Cocos2D and Objective C to develop for iOS only and then make an APK for Android out of it using Stella SDK. Has anyone done this? I'm pretty sure there will be limitations, and how about Google's in-app billing, AdMob and Facebook integration on Android? Moscrif - JavaScript, looks like it's more for former web-developers Starling - Flash 11, i'm not much into Flash ND2D - not yet 1.0, does it have many features?

So, I'd be happy if you could comment from your experiences with the engines and suggest which one in the list (or anything else that I've missed) is the best for the described requirements. I also may be wrong with my first impressions about some of the engines.

I'm currently thinking of Marmalade+IwGame as the best option but since I don't have much info about Cocos2d-x and Particle code, I am not really sure about it.

Thank you!

EDIT (June 2013): So far I made 2 cross-platform 2D games and used Unity3D with 2D Toolkit plugin for both. For the game with simple GUI I used a simple self-made GUI system based on Unity's own. For more complex one (e.g. where GUI elements can overlap) I used the NGUI plugin. Recently 2D Toolkit added some more classes for GUI which is very handy since one had to use 2 different systems for texture atlases when combining NGUI with 2D Toolkit. I'll definitely try that one in the next 2D game. The main reason for choosing Unity3D for 2D games was that I already was deep into Unity3D both in terms of experience and accumulated code snippets for re-use. Also, I purchased Unity3D pro (with Android Pro and iOS Pro) for 3D games and it made full sense to just pay additional $60 for the 2D Toolkit to get 2D games also covered. I so far don't regret my decision, it seems to have been optimal for my case. The only thing which gave me headache was adding social features with the Prime31's plugins (Android & iOS social plugins) but I assume that their bugs are not the fault of Prime31 but of Twitter/Facebook instead, so I probably would see the same bugs on any other engine or plugin.

EDIT (Jan 2014): I guess with Unity 4.3 the answer to my question is pretty obvious now: the Unity's new sprites system and maybe also 2DToolkit totally beat anything else, especially for people who have (like me) been on Unity for a while and purchased the Pro version with add-ons.

最满意答案

我已经与Marmalade加工了,我发现它令人满意。 虽然它不是免费的,开发人员社区也不够大,但是仍然可以使用它的教程来处理大部分任务。 (一旦我有一段时间,我会写我的教程)。 IwGame是一个很好的引擎,由一个Marmalade用户开发。 这对一个基本的游戏来说是有好处的,但是如果你正在寻找一些严肃的高级游戏内容,那么也可以使用Cocos2D-x和Marmalade。 我从来没有使用过Cocos2D-x,但是在Marmalade的Github上有一个扩展名。 关于果酱的另一个好处是它是EDK (Extension Development Kit) ,它允许您为您需要的任何功能进行扩展,这些功能是以本地代码提供的,但不在果酱中。 我已经用它来开发我自己的自定义Admob扩展和一个Facebook扩展。

编辑 : 果酱现在拥有自己的RAD(快速应用开发)工具,仅用于2D开发,命名为Marmalade Quick 。 虽然编码将在Lua不在C ++中,但由于它构建在C ++ Marmalade之上,您可以轻松地包含C ++库和所有其他EDK扩展。 同时, Cocos-2Dx和Box2D扩展也被预先包含在Quick中。 他们最近推出了它的版本(这是beta版本3-4个月)。 我想我们真的只寻找2D开发,你应该试一试。

更新: Unity3D最近推出了对2D游戏的支持,这似乎比任何其他2D游戏引擎更好,由于它是GUI和编辑器。 物理,精灵等支持被内置。 你可以看看它。

更新2 果酱将于近期停止其内部游戏制作的SDK。 所以这不是一个明智的决定依靠这个。

I've worked with Marmalade and I found it satisfying. Although it's not free and the developer community is also not large enough, but still you can handle most of the task using it's tutorials. (I'll write my tutorials once I got some times too). IwGame is a good engine, developed by one of the Marmalade user. It's good for a basic game, but if you are looking for some serious advanced gaming stuff, you can also use Cocos2D-x with Marmalade. I've never used Cocos2D-x, but there's an Extension on Marmalade's Github. Another good thing about Marmalade is it's EDK (Extension Development Kit), which lets you make an extension for whatever functionality you need which is available in native code, but not in Marmalade. I've used it to develop my own Customized Admob extension and a Facebook extension too.

Edit: Marmalade now has it's own RAD(Rapid Application Development) tool just for 2D development, named as Marmalade Quick. Although the coding will be in Lua not in C++, but since it's built on top of C++ Marmalade, you can easily include a C++ library, and all other EDK extensions. Also the Cocos-2Dx and Box2D extensions are preincluded in the Quick. They recently launched it's Release version (It was in beta for 3-4 months). I think we you're really looking for only 2D development, you should give it a try.

Update: Unity3D recently launched support for 2D games, which seems better than any other 2D game engine, due to it's GUI and Editor. Physics, sprite etc support is inbuilt. You can have a look on it.

Update 2 Marmalade is going to discontinue their SDK in favor of their in-house game production soon. So it won't be a wise decision to rely on that.

更多推荐

本文发布于:2023-07-24 01:54:00,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1240145.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:引擎   平台   游戏   Android   iOS

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!