作为这里的游戏开发新手,我目前正在练习使用C++和OpenGL图形,并希望组装一个既可以用于小型游戏项目的骨架项目,也可以与一些感兴趣的朋友分享。
目标是 OpenGL 3.3+(不使用过时的机制,例如“glBegin”等),使用库 SDL 2.0、GLEW 1.10.0(带有 WGLEW)和 GLM 0.9.4.5。我正在使用 Visual Studio 2012 进行开发,主要用于 Windows,但如果可能的话,多平台兼容性也是可取的。
手头的问题是我现在正在尝试实施抗锯齿。大多数消息来源似乎告诉我,为了实现这一点,我首先需要创建一个虚拟上下文,以便访问某些 OpenGL 功能,激活多重采样,最后生成一个适当的渲染上下文。如 [OpenGLs 页面](http://www.opengl.org/wiki/Creating_an_OpenGL_Context_%28WGL%29 “创建 OpenGL 上下文”)中所述。
我当时在想,是这样的;大多数指南、示例等倾向于混合使用 SDL 功能和 OpenGL 调用,或者构建完全专注于 OpenGL 调用的函数。虽然我可以用一些数字肘部油脂来重现这一点;我希望使用 SDL 的一半原因是不必自己管理窗口句柄、像素格式等,而是让 SDL 处理这些。
因此,我现在问你;我能否以某种方式创建一个虚拟上下文,启动诸如多重采样和各向异性之类的东西,并仅通过 SDL 2.0 等支持库转移到适当的上下文中,还是我必须亲自使用 OpenGL API(然后最好通过 GLEW)和建立几个启动器功能,如其他人有?如果我需要我自己,SDL 的宗旨不会丢失吗?