在 Ubuntu 论坛上阅读了一个关于 GLUT vs. FreeGLUT 的讨论。
GLUT 在图形编程中已死?SDL 是否现在成为 OpenGL 编程的主流?
2017年2月28日编辑:
我应该澄清,那些希望入门OpenGL实际应用的学生最好从SDL或Qt开始。正如@TM在他的评论中指出的那样,与编写真实世界的渲染应用程序相比,使用GLUT要远离现实。我认为GLUT适合学习的原因是当我们分离学习OpenGL和学习窗口系统的具体细节时,更容易学习。当然,这可能不符合您的需求。
GLUT对于严肃的游戏开发来说过于简单。SDL被众多商业游戏移植公司采用。GLUT适合学习OpenGL和进行简单演示,而像SDL这样的库则更适用于实际游戏开发。
SDL提供了许多其他功能的抽象,例如音频,以及各种插件库(如SDL_image、SDL_mixer等),这些都有助于编写完整的游戏。掌控主循环也是相当重要的。
如果你正在开发一个需要本地GUI的OpenGL应用程序(例如3D建模软件),则可能更有兴趣使用wxWidgets或Qt(正如batbrat所建议的那样)。
GLUT是一个非常有用的学习指南,但对于大多数实际应用来说,它并不具备足够的功能或实用性。我也遇到了一些不同的GLUT实现和在某些环境中的支持方面的小问题,因此我已经学会了除了快速演示之外,要远离它。
我的OpenGL经验通常是在嵌入式系统上,我完全控制输出,在那里我使用X Instrinsics来启动基本的OpenGL窗口。这有点痛苦,但只需要少量的代码就可以进入OpenGL,完成大部分工作。