我即将开始研究自定义跨平台引擎(c ++),它需要能够支持OpenGL和DirectX的最新版本。在编译之前选择渲染器。
我正在寻找跨平台库来处理窗口创建和输入,它们也可以处理DX和OGL的最新实现 - 最好是低调,最重要的是:快速。有什么建议吗?
谢谢!
答案 0 :(得分:3)
SDL可能是最常用的跨平台库。
答案 1 :(得分:3)
您应该查看SFML(简单快速媒体库)。虽然SDL由于其年龄较大而更为人所知,但SFML在功能和设计方面更为丰富,尽管只有几年的历史。它基本上可以被描述为更新,更现代和面向对象的SDL(它是C ++; SDL是C)。
简要介绍一下它的功能:
我将它用于我需要的不仅仅是命令行的所有项目,我喜欢它。我强烈推荐它。
它应该能够为您的想法提供良好的基础。
答案 2 :(得分:2)
答案 3 :(得分:0)
答案 4 :(得分:0)
OpenGL和DirectX有些相似但却截然不同。 OpenGL的构建旨在将开发人员希望呈现给设备(如果可用)。 DirectX的构思旨在使开发人员可以使用设备的渲染功能。
由于存在差异,您最终会实施两次所有内容。操纵窗口是一个很小的问题。您不需要完全相同的窗口,因为您将使用其中一个或另一个来渲染它们。
最好使用不同的东西来创建窗口(例如用于OpenGL的SDL和用于DirectX的MS API)并将其包装在通用接口之后。然后在编译之前也会选择“东西”。如果MS API不可用,那么你也缺少DirectX,所以不需要让它可移植。