在Linux上编写一个小游戏需要什么?

在Linux上编写一个小游戏需要什么?,linux,Linux,我想做一个简单的游戏:2d,单人,没有大量的动画和特效。我对现成的游戏引擎不感兴趣,我想学习用一种通用语言编写一些代码。我正在使用Linux(AMD64)并寻找一些简单的游戏库。我不想混用几种语言,事实上,它们中的大多数都足够快,足以满足我的需要。跨平台将是一个优势,但我所需要的是一个良好的Linux支持 我一直在考虑一些解决办法 红宝石 +语言看起来很好。 +我要学红宝石。 -恐怕我在使用其他库时会遇到问题。 -这可能更长。 SDL+C +它用于游戏。 +设置起来非常容易。 +还有很多附加库。

我想做一个简单的游戏:2d,单人,没有大量的动画和特效。我对现成的游戏引擎不感兴趣,我想学习用一种通用语言编写一些代码。我正在使用Linux(AMD64)并寻找一些简单的游戏库。我不想混用几种语言,事实上,它们中的大多数都足够快,足以满足我的需要。跨平台将是一个优势,但我所需要的是一个良好的Linux支持

我一直在考虑一些解决办法

红宝石 +语言看起来很好。
+我要学红宝石。
-恐怕我在使用其他库时会遇到问题。
-这可能更长。

SDL+C
+它用于游戏。
+设置起来非常容易。
+还有很多附加库。
+它是跨平台的。
-解决方案的级别很低。
-这种语言有时很难读懂

QT+C++
+设置起来非常容易。
+标准QT库支持我可能需要的一切。
+它是跨平台的。
+文档很好。
-编译速度很慢。
-这种语言看起来很可怕。
-标准QT库的大小太大,无法理解

网络浏览器环境
+我将进一步了解这种环境。
+它在某种程度上用于游戏。
+它非常跨平台。
-这将是太多的实验

Java
+它用于游戏。
+标准Java库支持我可能需要的一切。
+它是跨平台的。
-设置起来相当困难。
-标准Java库的大小太大,无法理解。
-Java的源代码看起来会更好。
-我想我不想学Java

谷歌Go
+我要学习谷歌围棋。
-图书馆有一个大问题。
-解决方案将是相当低的级别

Python
+据《每日邮报》报道,看起来有些人用Python做游戏。
+看起来可能有比Ruby更多的库。
-Ruby语言看起来更好。
-我想我不想学Python

C+++其他东西
+它用于游戏。
+这可能是跨平台的。
+有很多图书馆。
-我不需要C++扩展。 编译可能会很慢,C的编译器很快,而不是C++。 Haskell
+我要学习哈斯克尔。
-关于电脑游戏编程的许多事情看起来太紧迫了。
-看来我可能会在库方面遇到一些问题。
-编译(GHC)看起来很慢


也许还有更多的事情要考虑。有没有人有在非主流解决方案中为Linux制作小游戏的经验?有人给我提建议吗?

这可能不是你想要的,但我想说这是你最需要的:“停止规划,开始建设。”

你试图比较A、B、C和D,而你显然对它们中的任何一个都不太了解


从你想知道的其中一个开始(比如Ruby,因为它在你的列表的开头),然后开始尝试做你想做的事情。您将部分成功,部分失败,这两种结果都将贡献您想要的编程知识,您将完成游戏,或者获得足够的知识,以便在迁移到另一个平台时做出明智的选择。

一些Python建议(考虑到您的需要,我认为您不会后悔选择这种语言):

写一个小游戏(特别是2D)会很棒。好的(基于社区的)支持,文档,例子,免费跨平台

如果你想看3D,也许值得一看

有针对C的快速编译器,而不是针对C的++

<>这不是很正确,而是有C++的特点,它可以用来做慢编译。写C类C++,你可以得到快速编译,就像你最初写的是C一样。这是C++的优点之一。
<>不是真的推荐这个,严肃的C++用户如果你这样做会畏缩不前。

Python +pyGoo.< /P> < P>在JavaScript和HTML5浏览器中工作实际上不是实验! 由于引入了canvas元素,您可以使用它在浏览器中进行绘制。 一个游戏循环可以通过Javascript定时器实现

使用Javascript和HTML5,您可以构建无需任何框架的跨平台游戏(尽管为了方便起见,您可能希望使用jQuery或类似工具)

关于画布元素:


< /P> < P>我认为java是制作简单程序的最佳工具,因为它容易学习,而且支持很多。伊柯丽斯是一个编译java代码的好程序。我不喜欢C++或C,java非常好,因为它可以在任何操作系统上运行,并且可以制作非常复杂的游戏,比如MimeCrpe或者简单的像Pac Man。一般来说,K.C(Visual C,C++,C,Objo C等)有很多优点。它是快速的,我的意思是快。但是,开发简单的东西需要一段时间。java是C(很难学习和需要开发一段时间)和Python(轻量级和强大)之间的交叉。.Python是我认为你应该学习的。它很容易学习。它功能强大。它很轻。它是跨平台兼容的。它很灵活。它有这么多库,你应该不会有困难找到适合这项工作的工具。这是我的观点。

我会使用Python和pygame。Python功能强大,而且相对容易学习。有很多很棒的资源,而且用途非常广泛。我建议pygame图形模块。pygame.org有非常详尽的文档。