我正在观看有关OpenGL 3的视频 - https://www.youtube.com/watch?v=XMgfddy7S7Q
在谈论使用OpenGL的库(3点)时,他提到GLFW,freeGLUT和GLUT用于创建窗口。
但他们能像SDL一样处理输入和声音吗?
如果是这样我应该使用SDL?或者GLFW是否更专注于在OpenGL中制作游戏?
答案 0 :(得分:3)
不,GLUT和GLFW是主要管理OpenGL上下文创建和窗口( ,包括输入 )的框架。 GLUT有一些实际上用于绘制东西的组件,但总的来说它只是设置GL。
另一方面,SDL包括GLFW和GLUT都没有的声音,但也包括加载图像文件等资源的实用程序。它是一个更加端到端的解决方案,而GLFW和GLUT仅用于促进渲染/窗口化。要使用GLFW执行相同的操作,您需要输入一些库,例如SOIL(或直接使用libpng,libjpeg等),还可以找到音频库。你不需要任何这些东西来实现游戏。在我的工作中,我直接与Windows,Linux和OS X上的OpenGL(WGL / GLX / CGL)进行交互,但是在这样一个直接级别调试和维护这些平台所需的额外时间可能是一个真正令人讨厌的问题。如果编写特定于您运行的每个平台的额外代码是没有吸引力的,那么你一定要考虑GLFW等。