【问题标题】:Agile language for 2d game prototypes?二维游戏原型的敏捷语言?
【发布时间】:2011-02-10 06:57:36
【问题描述】:

偶尔(阅读:当我的未婚夫允许时)我喜欢制作不同游戏的原型或我拥有的类似游戏的想法。通常我使用 Java 或 C#(还不是 xna),因为它们是我最常使用的语言。但是我想学习一些更适合敏捷开发的东西;一种更容易快速制作原型的语言。

在我的工作中,我最近一直在使用更松散(弱/动态类型)的语言,特别是 python 和 groovy,我认为类似的东西适合我正在寻找的东西。

所以,我的问题是:What languages (and framework/engine) would be good for rapidly developing prototypes of 2d game concepts?

几点说明:

  • 我不需要超快的位运算性能。在这种情况下,我更喜欢易于开发而不是性能。
  • 我想使用一种具有健康社区的语言,这对我来说意味着相当多的维护的第三方库。
  • 我希望该语言能够跨平台友好,我在各种不同的操作系统上工作,并且希望能够以最少的工作量进行移植。
  • 我无法想象自己使用的语言没有像样的调试选项和编辑器语法高亮支持。

注意:如果您知道 Java 或 C# 库/框架,您认为它们可以简化游戏原型的制作,我也愿意为这些语言学习一些新东西

【问题讨论】:

  • 我考虑过 AIR/Flex/AS3,但工具(Flash/Flex 构建器)的专有性质是关闭的。我已经看到了 AS3 的 3rd 方编辑器/开发环境,但我印象不深,有什么建议吗?

标签: language-agnostic programming-languages agile 2d


【解决方案1】:

Python + pygletcocos2d

我使用 pyglet 制作了我最近完成的 iPhone 游戏的原型。合作很愉快,而且速度绝对很快。

【讨论】:

    【解决方案2】:

    我在使用Clojure 进行 2D 游戏开发时取得了很好的早期成果。

    原因如下:

    • 动态语言 - 非常适合交互式原型设计using the REPL,例如在我正在开发的 Roguelike 中,您可以一边玩游戏一边交互式地查询/操作游戏状态
    • 非常高效(一旦你掌握了 Lisp 语法)——由于宏、高阶函数、STM 等原因,我可能需要比任何其他语言编写更少的 Clojure 行数。
    • 它与Java具有出色的互操作性,因此您可以直接借用所有出色的开源Java库。例如Swing / Java2D 非常适合简单的 2D 游戏,但如果你真的想的话,你可以一直使用类似 jMonkeyEngine 的东西。您还可以使用所有 Java 网络和 IO 库等。
    • 性能一般都不错 - 尽管默认情况下是动态的,但会牺牲绝对速度,但如果遇到瓶颈,您可以添加原始/类型提示以获得非常快的性能。
    • 跨平台 - 可以在任何可以找到 JVM 的地方运行,无需重新构建/重新编译。假设您坚持使用像 Swing 这样的纯 Java 库,GUI 应用程序可以跨平台正常工作。如果您想在浏览器中运行,还可以创建小程序或通过 Java webstart 启动。
    • 很棒的社区 - Clojure 社区本身很小,但支持、友好、创新且发展迅速。它也是庞大/广泛的 Java 社区的一部分,因此您可以在需要时随时拥有一个由经过验证的库和工具组成的庞大生态系统。

    【讨论】:

      【解决方案3】:

      通过http://www.pygame.org/news.html查看 PyGame

      就我个人而言,我不太喜欢它。太乱了,但我过去曾将它用于原型并取得了巨大的成功。

      对于 C#,使用快速的 Windows 窗体或 WPF 应用程序结合绘图原语也很有效。

      【讨论】:

      • 当您开始使用 XNA 时,我建议您设置一个游乐场项目。只是有什么可以乱来的。也是很好的学习方式。
      • +1 用于 pygame(也可能是 pyglet)。 PyWeek 挑战表明您可以多快地使用它来启动和运行。
      【解决方案4】:

      Microsoft SmallBasic

      开发非常简单,查看发布的应用程序 - 源代码已附上。另一个优点是您可以重用您的 .NET 知识。

      这里最大的问题是多平台性 - 它的应用程序使用 Silverlight 运行,这是一种跨平台(Windows + MacOS X,Moonlight for Linux,但我不确定它是否支持 SmallBasic)。但是AFAIK的开发环境只是Windows。

      【讨论】:

        【解决方案5】:

        根据您正在寻找原型的游戏类型,AS3/Flex 是一个有效的选择。 Flash Develop 是一个不错的开源 IDE,SDK 本身也是开源的。

        该语言比 Java 或 C# 松散得多,因此尽管它在凝聚力方面付出了高昂的代价,但它非常适合原型/快速而肮脏的开发。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2014-11-25
          • 2023-03-24
          • 2011-10-07
          • 2010-09-10
          • 2010-12-12
          • 1970-01-01
          • 2011-02-27
          相关资源
          最近更新 更多