C++:跨平台游戏库?

4
我想写一个严肃的2D游戏,最好有Linux和Windows版本(最终还要有OSX版本)。Java非常好,因为它是跨平台的。但是Java写一个严肃的游戏太慢了。所以我想用C++来写。但是C++不太友好跨平台。我可以找到Windows游戏库和Linux库,但我正在寻找一个可以在Windows平台和Linux平台上重新编译源代码使用的库。

有引擎可以做到这一点吗?这个想法是否不相关?重新编译真的那么容易吗?

任何关于C++库的建议和信息都将不胜感激!


2
“但是Java写一个严肃的游戏太慢了。” [我不完全同意](http://www.runescape.com/)。 - strager
你可以从SO问题Game Programming Library C++中获得一些有用的答案。 - strager
现代Java在运行时速度方面实际上与C/C++不相上下,而且开发速度要快得多。做好研究工作,并确保您查看的任何文章都是最近写的。 - amara
IL2 Sturmovik(飞行模拟器)是用Java编写的。 - SigTerm
3个回答

5
尝试使用SDL(与c / c ++结合使用),它非常适用于2D游戏(并通过opengGL支持3D),并且可以在Windows,OS X和Linux上运行。请点击此处以了解更多信息。

2
我使用SFML来构建简单的游戏。以下是它的介绍:

SFML是一个可移植且易于使用的多媒体API,用C++编写。您可以将其视为SDL的现代面向对象替代品。SFML由几个包组成,以完美地满足您的需求。您可以将SFML用作最小的窗口系统与OpenGL进行交互,也可以将其用作完整功能的多媒体库,用于构建游戏或交互式程序。

我真的很喜欢它,因为它确实是一个C++库,而不是用C编写的C++。
然而,你问到2D引擎,我还没有找到一个好的。SFML和SDL更多是低级别的媒体库。

0
对于2D游戏,我推荐使用SFML。它的概念类似于SDL,具有大部分相同的功能,但更加面向C++(SDL是一个C库),并且由于它在内部使用OpenGL,因此在大多数情况下性能更好。除此之外,在我看来,它也更容易使用。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接