正如主题所述 - 是否有任何技术可以让我为简单的商业2D游戏编写代码,然后编译后可以在Android,iOS和Web浏览器或其中至少两个(例如Android和iOS)上运行良好)?现在有很多关于跨平台的嗡嗡声,我想知道我是否遗漏了什么。
我的目标(由我的制作人设定)是为这三个平台制作这个游戏,到目前为止我计划使用: - Web浏览器:Adobe Flex, - Android手机:Java(因为我最喜欢的C ++仅推荐用于简短的片段), - iPad / iPhone / iPod:Objective-C(还有其他选择吗?)。
这几乎意味着重复编写相同的源代码三次。有没有什么办法可以通过使用至少兼顾两者的技术加快速度? 但是,我不想在所有三个中使用Adobe Flex(尽管可能),因为它需要Adobe AIR(仅适用于Android 2.2及更高版本)并且没有很多手机拥有它(它与98的浏览器完全不同) %的人有Flash)。
我当然不介意为每个版本添加一些特定于平台的代码。
另外,如果你有任何关于为任何平台选择更高级技术的建议(也许是一些不错的框架?),我也非常感激。
答案 0 :(得分:4)
答案 1 :(得分:3)
我想说多媒体融合能够做到这一点,但还没有准备好。目前,该产品有许多运行时导出程序,允许您将游戏导出到多个目标平台,包括闪存,Java和iOS。 XNA和Android出口商目前正在开发中。我应该提一下,我只是作为他们产品的快乐消费者与这些人联系在一起。即使他们不能做你想做的一切,也许值得一试。如果它不适合您的需求,如果您希望快速制作应用程序原型,它仍然是一个非常好的选择。
请参阅:
在旁注中,我个人建议不要使用js + html5路线,特别是如果你的目标是手机。我应该强调,这只是我的意见,而且这里有很多人不同意我的看法。在我玩过的所有javascript游戏中,我都感受到了垃圾收集器。问题在于,如果没有对垃圾收集的控制,它可以在感觉到的时候自由运行,在游戏过程中造成不常见但非常明显的暂停。你可以解决这个问题,但我不明白为什么它应该那么困难。我绝对可以与能够编写一次并在所有平台上运行它的理想保持一致,但我现在看不到它的工作原理。
假设您找不到合适的工具,提供一些建议,您的目标是最大限度地提高可重用性。这意味着您的所有游戏资源和级别都应该被明确定义为独立资源。对于非关键逻辑,您可以使用可嵌入的脚本语言,例如Lua,这将最大化您的代码重用。 C(或C ++)代码也可以在许多平台上重复使用,如果您对该语言熟悉且自信,可能是一个不错的选择。
答案 2 :(得分:3)
我个人使用Phonegap和Zepto.js。但是你可能会对jQuery mobile有更多的好运。 Phonegap很不错,因为它的网站会为你编译应用程序。
答案 3 :(得分:2)
1)如果你用C ++编写游戏,可以将它用于iPhone和iPad。 Android(NDK)也是如此。最好是用C ++编写游戏引擎,而不是使用特定于操作系统的图层来创建UI。
2)用HTML和HTML实现你的游戏的JavaScript。 iPhone / Android用户必须使用网络浏览器来玩游戏。对于iPhone,您甚至可以创建一个看起来像应用程序的启动器,但实际上是一个带有HTML和HTML的webview。的Javascript
答案 4 :(得分:2)
答案 5 :(得分:1)
Game Maker Studio。它有一个软件包,可以在您概述的所有平台上进行部署。