我正在寻找一个跨平台(视窗,Linux,Mac)的C++ 2D游戏引擎,具有实际的面向对象的方法,而不仅仅是糟糕的单例之类的。我希望创造一些小型的,基于物理的,免费的和开源的游戏,所以许可证必须是麻省理工学院/BSD或GPL。
我发现了许多好的选择,但它们都是高级语言,开发似乎停滞不前。例如,LibGosu看起来很棒,但它缺乏像碰撞检测这样的基本功能。LOVE和Cocos2D都很棒,但它们分别是Lua和Python。有没有什么好的C++替代方案不会让我的生活变成一个依赖地狱,让我写出合适的OO代码呢?
发布于 2013-01-25 15:55:12
您可以使用SFML
它很容易使用,并且有许多物理引擎可以添加到它中。
发布于 2012-08-21 14:02:39
在准备好预先构建的对象模型和滚动自己的对象模型之间存在权衡。虽然从预先构建的OM开始可能会更快,但它可能不适合以后的需求,而且修改(或更有可能是变通)来满足您的需求将是一件痛苦的事情。这就是为什么许多引擎在比您编写客户端代码时稍微低一点的级别公开它们的功能,这需要您自己创建“粘合层”。
至于寻找引擎,你可以只使用3D引擎与四边形/精灵和你的相机上的正交投影(它只是被限制为在平面上移动),以获得与2D引擎相同的效果。你基本上可以修复你的3D的Z分量(比如0),你可以或多或少地把它当作2D来处理。此外,你可能会得到一个性能更好的引擎,如果你想的话,还可以在以后轻松地整合3D功能和概念。
与将自己局限于2D引擎相比,您将拥有更广泛的种类和找到所需内容的可能性(从API/OM的意义上)。
发布于 2012-08-21 15:51:19
看看cocos2d-x,cocos2d-iphone的c++端口。与用于简单物理的Box2D ( http://box2d.org/ )相结合,它提供了许多可能性。
两者都是c++,分别受麻省理工学院和zlib许可。
编辑:从cocos2d-x v2开始,不再支持linux端口( http://www.cocos2d-x.org/projects/cocos2d-x/wiki/Tutorials )
https://stackoverflow.com/questions/12049025
复制相似问题