OpenGL跨平台窗口

时间:2009-03-02 22:13:35

标签: c++ opengl cross-platform

我正在寻找一个窗口......呃......对于OpenGL来说,我一直在使用SDL,但最近发现它至少在我见过的任何代码中都不能满足我的需求。我想找一些GUI库,它允许我使用OpenGL(和SDL,如果可能的话)使用菜单栏,侧面可能的选项以及开箱即用的关闭按钮进行开发。 Qt是我正在寻找的那种东西,但是我想用一些不会迫使我把它变成开源的东西。

我想要的快速列表,工作关闭按钮,使用OGL的能力,跨平台,任何不会强迫我成为开源,免费的许可,以及全屏和更改分辨率的能力苍蝇。

我自己搜索过,我真的不是一个懒惰的人;)我只想在这里得到一些意见,然后再深入研究它并发现它不适合我的需要。

提前感谢您的任何反馈。

7 个答案:

答案 0 :(得分:4)

试试wxWidgets。有一个与OpenGL here一起使用的链接。

答案 1 :(得分:4)

当Qt 4.5发布时(本月晚些时候,我认为)它将是LGPL,所以如果你可以等待几周,你可以使用Qt而无需开源你的程序。

答案 2 :(得分:2)

GLUT(GL Utility Toolkit)接近你正在寻找的东西。它既快速又简单,跨平台,但它不支持菜单栏。 This page也有许多类似GLUT的替代品。

答案 3 :(得分:2)

对于开箱即用的关闭按钮启用窗口,您可以拥有GLUT,如前所述,如果您的其他GUI需求非常简单,我认为GLUT可以为您提供一些。

你也可以使用NVidia WidgetsAntTweakBar来获取简单的OpenGL渲染菜单和按钮。

答案 4 :(得分:1)

只要您能够将正确的信息传递给OGL,您就不需要“支持”OGL。至少在Windows上,如果你有一个可以挂钩HWND的窗口API,你可以设置OGL来使用你想要的任何窗口。我用wxWidgets和win32完成了这个。我无法帮助你使用其他平台,但我怀疑你可以做类似的事情。

这也适用于D3D,是将渲染代码与窗口API分离的好方法。

答案 5 :(得分:0)

SDL可以创建OpenGL Windows。

http://gpwiki.org/index.php/C:SDL_OGL

答案 6 :(得分:0)

有许多呈现的小部件库,例如rotoglup建议的小部件库。看看CEGUI和QuickGUI,他们可能会让你开心(尽管CEGUI因滥用XML而让我失望)。这是一个无耻的插件:GLICT