我应该用什么技术来编写游戏?

时间:2010-04-25 18:08:16

标签: game-engine

我对3D网络游戏有一个好主意,我得出结论,可以用Java编写它作为一个applet,它将在Web浏览器下生存,就像C ++中的完整软件一样。它的外观和感觉都一样。

Java在C ++上的主要优点是使用Java可以在不下载任何软件的情况下播放。我已经考虑过下载图形,声音等,但我找到了解决方案。 RuneScape只是证明这是可能的。

所以我的第一个问题是,我的游戏应该在网络浏览器上还是在操作系统上?我认为在Web浏览器中它更便携,尽管你需要安装Java和东西。但事实是,大多数MMO游戏目前在网络上。如果你在一个软件中建议所以请建议一种语言--C ++或更高效的东西,如Python或C#?

因此在选择语言后,我需要一个图形解决方案。我应该直接用OpenGL / DirectX编写还是使用游戏引擎? 我应该使用什么游戏引擎?食人魔? jMonkeyEngine?

你有什么看法?

谢谢!

P.S:请不要使用“使用你所知道的”这样的答案。

3 个答案:

答案 0 :(得分:7)

尽管你的最后一点,尽可能使用,以及最大的用户群。

小程序已经过时了,不再像过去那样广泛使用。 Flash或Silverlight现在是网络游戏的“标准”。基于您对使用Java的兴趣,可能值得查看JavaFX,它应该是applet应该是什么的替代品。我实际上并没有使用JavaFX,也没有听到太多关于它的信息,按照你的意愿去做。正如您所说,部署到网络的最大好处是用户群更大,人们更有可能为您的游戏提供游戏。缺点是你最终使用Flash或类似的开发过程。

如果您沿着建立独立应用程序的路线前进,您可以随意使用任何内容。 C ++,Java,C#,Python等都是可行的选择。你可以用大多数语言制作游戏。 C ++是行业标准,但忽略了这一事实。如果您是业余爱好者,您可以用任何语言制作令人惊叹的表演和表演游戏。我想说的是,除非你正在构建下一个大热门,否则可以避免使用C ++。与Web应用程序相比,您的用户将需要您使用的框架/ API。例如,他们需要OpenGL / DirectX / XNA等等。至于XNA vs DirectX vs OpenGL?重要的是,您的语言选择很可能决定您选择的图形API / Framework。所以我会把这一点留给自己研究。

至于你应该使用引擎吗?这取决于。

  • 你制作的游戏是否足够复杂以保证引擎?
  • 你是否只想专注于游戏,而不是引擎?
  • 学习现有引擎感觉舒服吗?
  • 您是否觉得自己能够自如地生产所需的部件(碰撞等)?

其他因素也是如此,但值得专注于手头的游戏。您可以轻松编写足够简单的引擎以满足您的需求。通过这样做,您将避免许可和部署问题。

答案 1 :(得分:7)

需要考虑的一个选项是Unity 3D游戏引擎 - 除了是一个相当强大的开发工具之外,还有几个cross-platform deployment options。您可以构建一个独立的可执行文件(适用于Windows和Mac,还不适用于Linux),一个Web浏览器版本,它可以回答您关于在Web上与OS进行部署的第一个问题。你可以做到这两点。

它还为scripting languages使用Javascript和C#(以及Boo,Python的变体)。这些基于Mono,.NET的开源版本,所以它不仅仅是一个游戏平台,而且可以访问所有.NET的功能(好吧,无论如何都是在Mono中实现的)。

有关Unity功能的详细列表,请参阅Licensing页面(基本版本是免费的)。并查看电子艺术的Unity-based games列表,其中第一个是Tiger Woods PGA Tour Online。

答案 2 :(得分:0)

作为小程序运行的游戏不会被认为是大多数铁杆游戏玩家的真正的游戏。

如果你想要一个只用noobs播放的游戏,那么java可能是一个选项,否则就放弃它并坚持使用一种允许实际生成可执行文件的语言。

谈论图书馆,没有那么多你无法尝试所有并选择你最喜欢的图书馆,所以......做到这一点。