7

我正在创建一个我希望跨平台运行的 2D 游戏(在 Windows、Mac、iOS 和 Android 等平台上作为主要目标)并且我使用的引擎需要是开源的。主要目标是拥有最大的代码可移植性(可能通过脚本)。

更愿意在 C# 中执行此操作,但如果必须,使用另一种语言并不是一个大问题。

我考虑过使用 Flex SDK 的 MonoGame 和 flash,因为它们都声称是跨平台和开源的。

考虑到我的标准,其中哪一个是更好的选择?还是其他游戏引擎/库更合适?

4

4 回答 4

7

我建议Unity3D。这是一个3D平台。但是,如果您只使用 2 维,那您就可以了。在 Unity3D 中,您可以使用 C#、Javascript 或 Boo 编写游戏。

Unity 是免费的,可以导出到 Windows Phone、Windows 8 App、Windows、Mac、Linux、Android、Blackberry、iOs、Xbox360、Wii 和 PS3,但对于最后 3 个,您需要 Microsoft/Sony/Nintendo 的开发人员许可证。但可能性是存在的。

更新

您必须提前支付 ios 和 android 插件的费用。现在他们是免费的:

今天,我们在这条漫长的道路上又迈出了一步:从现在开始,独立的 Unity 开发者将能够完全免费地将他们的游戏部署到 Android 和 iOS 平台。更新 Unity,您会发现 Android 和 iOS 构建选项(以前是基本的附加组件)已准备好等待您使用。

来源:http: //blogs.unity3d.com/

同时,对其他平台的支持也出来了(包括windows phone、winrt & blackberry)。这些都是免费的。如果您想要专业功能,则需要专业许可证。但是您需要的大部分东西都在免费版本中。比较看这个页面

于 2013-08-14T11:51:44.490 回答
3

下面的引擎允许您重用几乎所有代码,您需要更改的只是分辨率和触摸输入/控件从桌面到移动或其他方式。我建议您查看这些引擎,它们都是开源的:

  • libgdx - 使用 Java,几乎和 XNA 一样,但比 MonoGame 快。“在 Windows、Mac、Linux、Android、iOS 和 HTML5 上发布您的游戏,所有这些都使用相同的代码库。” - 在他们的网站上,任何可以运行 java 的东西都可以运行你的游戏。大社区,所以当您需要帮助并获得帮助时,您应该不会有问题提出问题。
  • Qt-Project - Qt 是一个跨平台的应用程序和 UI 框架,适用于使用 C++ 或 QML(一种类似 CSS 和 JavaScript 的语言)的开发人员。从 Qt 5.1 开始,您应该能够为 Android 和 iOS 构建,允许您为您请求的所有平台构建。大社区。
  • Moai - 使用 Lua 并可以部署到您请求的所有平台。唯一的缺点是社区很小,文档有点过时,但 irc 和论坛上的人通常会帮助你,但答案并不总是立竿见影。您还必须构建自己的主机来构建您想要的平台,但上次我检查了所有平台的公共主机。

libgdx 似乎非常适合您。性能惊人,社区很大,它允许您在所有平台上重用相同的代码,仅举几例。唯一的缺点是它不使用 C#。当然,您绝对应该自己研究一下,看看它们是否符合您的要求。我祝你在你的努力中好运。

于 2013-08-15T23:42:52.350 回答
2

根据您的喜好,有几个选项;我将列出我最近遇到的几个。

  1. Cocos2d 系列最近似乎很受欢迎。如果您认为 C++ 对您来说不是问题,那么 Cocos2d-X 将是一个选择,因为它提供了很多平台。其他 Cocos2d 系列也可能会引起您的注意。我猜有几个版本,比如 HTML5、Javascript、Python。等等,但我认为只有 cocos2d-x 是跨平台的。
  2. Unity3D(C#, Javascript, Boo) 似乎是一种选择,但它不是开源的,UDK(UnrealScript) 也一样,但如果你想购买许可证,我猜他们会提供源代码
  3. 正如您所提到的,Flash 也是一个不错的选择。它使用 AS3,这是一种 OOP 语言,如果您是初学者,它会非常有用。
  4. ImpactJS 也提供了很多平台,它使用 HTML5,你可以在这里查看http://impactjs.com/

该列表可能会越来越长,具体取决于您的需求。您应该清楚地说明您的需求,例如;你想去多深,哪些平台对你来说最重要?等等

祝你好运

于 2013-08-14T12:22:19.617 回答
1

您可以试试这个: http: //www.appgamekit.com/ (AGK) C++ 中的代码,但运行良好。一个非常简单的引擎。

于 2013-08-14T12:16:55.897 回答