试图决定一个库来创建一个窗口并捕获我的OpenGL应用程序的用户输入,但是有太多的选择:
GLUT简直过时了.我喜欢GLFW,但似乎你不能在显示它之前设置窗口位置(我希望它居中,这是多么要问?)所以你看到它出现然后转移,这困扰我.加上发展似乎已经停止了.SFML有一些很好的功能,但它使用事件轮询而不是我更喜欢解耦的回调.我认为我不需要FLTK的所有GUI功能.SDL很慢(似乎没有利用GPU).其他3我不太了解(FreeGLUT,OpenGLUT,OGLWFW).那么邪恶中哪一个较小?还有其他我没有听说过的吗?
我只是想制作一个简单的2D游戏.我对OpenGL非常熟悉,我并不真的需要绘制例程,但我可能不会抱怨其他功能如果正确实现可能会有用.
SDL允许您创建加速的OpenGL上下文(取决于驱动程序/硬件支持).
我知道你标记为C++,但pygame(python)是一个很棒的用于创建2D游戏的库,它也支持OpenGL上下文.Pygame是基于SDL构建的.
Clutter是一个新的基于OpenGL的GUI库,包含Perl,Python,C#,C++,Vala和Ruby的绑定.我自己没有用过它.来自网站:
Clutter使用OpenGL(以及可选的OpenGL ES用于移动和嵌入式平台)进行渲染,但使用API隐藏了开发人员的基础GL复杂性.Clutter API旨在易于使用,高效且灵活.