二维游戏原型的敏捷语言?

发布于 2024-10-16 18:06:12 字数 541 浏览 3 评论 0原文

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

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

所以,我的问题是:什么语言(和框架/引擎)适合快速开发 2D 游戏概念的原型?

一些注意事项:

  • 我不需要极快的位运算性能。在这种情况下,我强烈希望开发的简便性超过性能。
  • 我想使用一种具有健康社区的语言,这对我来说意味着大量维护的第三方库。
  • 我希望该语言能够跨平台友好,我在各种不同的操作系统上工作,并且希望能够轻松移植。
  • 我无法想象自己使用一种没有适当的调试选项和编辑器语法突出显示支持的语言。

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

Occasionally ( read: when my fiancé allows ) I like to prototype different game or game-like ideas I have. Usually I use Java or C# (not xna yet) because they are the languages I have the most practice with. However I would like to learn something more suited to agile development; a language in which it would be easier to knock out quick prototypes.

At my job I have recently been working with looser (weak/dynamically typed) languages, specifically python and groovy, and I think something similar would fit what I am looking for.

So, my question is: What languages (and framework/engine) would be good for rapidly developing prototypes of 2d game concepts?

A few notes:

  • I don't need blazing fast bitcrunching performance. In this case I would strongly prefer ease of development over performance.
  • I'd like to use a language with a healthy community, which to me means a fair amount of maintained 3rd party, libraries.
  • I'd like the language to be cross-platform friendly, I work on a variety of different operating systems and would like something that is portable with minimum effort.
  • I can't imagine myself using a language with out decent options for debugging and editor syntax highlighting support.

Note: If you are aware of a Java or C# library/framework that you think streamlines producing game prototypes I open to learning something new for those languages too

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(5

行雁书 2024-10-23 18:06:12

Python + pygletcocos2d

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

Python + pyglet or cocos2d

I used pyglet to prototype an iPhone game that I just recently finished. It was a joy to work with, and definitely rapid.

要走就滚别墨迹 2024-10-23 18:06:12

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

原因是:

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

I have had great early results using Clojure for 2D game development.

Reasons for this are:

  • Dynamic language - excellent for interactive prototyping using the REPL, e.g. in the Roguelike I'm developing you can play the game while interactively querying / manipulating the game state
  • Extremely productive (once you get the hand of the Lisp syntax) - I probably need to write less lines of Clojure than any other language because of macros, higher order functions, STM etc.
  • It has excellent interoperability with Java, so you can directly borrow all the fantastic open source Java libraries. e.g. Swing / Java2D is great for simple 2D games but you could go all the way and use something like jMonkeyEngine if you really wanted to. You can also use all the Java netowrking and IO libraries etc.
  • Performance is generally good - although the default is to be dynamic at the expense of absolute speed, you can add primitive/type hints to get very fast performance if you hit a bottleneck.
  • Cross platform - runs anywhere you can find a JVM, without the need for a rebuild / recompile. GUI apps work just fine across platforms assuming you stick to pure Java libraies like Swing. You can also create applets or launch via Java webstart if you want to run in a browser.
  • Great community - the Clojure community itself is small but supportive, friendly, innovative and growing fast. And it's also part of the huge / broad Java community so you have a massive ecosystem of proven libraries and tools whenever you need them.
巷雨优美回忆 2024-10-23 18:06:12

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

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

对于 C#,使用快速 Windows 窗体或 WPF 应用程序与绘图基元相结合也效果很好。

Check out PyGame at http://www.pygame.org/news.html

Personally I'm not much of a fan of it. Far too messy, but I've used it in the past for prototypes with great success.

For C# using a quick Windows Form or WPF application in combination with drawing primitives has worked well too.

坠似风落 2024-10-23 18:06:12

Microsoft SmallBasic

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

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

Microsoft SmallBasic

The development is as simple as it gets, check the posted apps - source codes are attached. Another advantage is that you could reuse your knowledge of .NET.

The biggest issue here is the multiplatformness - its applications run using Silverlight, which is kind of cross-platform (Windows + MacOS X, Moonlight for Linux, but I'm not sure it supports SmallBasic). But AFAIK the development environment is Windows only.

嘿哥们儿 2024-10-23 18:06:12

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

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

Depending on the kind of game you are looking to prototype AS3/Flex is a valid choice. Flash Develop is a decent open-source IDE, and the SDK itself is open-source.

The language is much looser than Java or C#, so even though it pays for it dearly in cohesion, it's extremely well suited for prototypes/quick and dirty development.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文