Intel HD 3000 上正确的 OpenGL 初始化是什么?
处理 OpenGL 初始化和退出的代码片段通常看起来是正确的,但您可能会考虑使用加载库对其进行优化。推荐的方法是使用加载程序库,而不是自己执行初始化。
建议改进:
<code class="c++">int OpenGLscreen::init(void *f, int textures) { if (_init) exit(); frm = (formtype *)f; HDC hdc = GetDC(frm->Handle); if (!_used) { // Pixel format selection logic ... } // Create OpenGL context using a loader library hrc = CreateOpenGLContext(hdc); if (hrc == NULL) { ... // Handle context creation failure return 0; } wglMakeCurrent(hdc, hrc); if (!glewInit()) { ... // Handle GLEW initialization failure return 0; } _init = 1; _used = 1; ... // Continue initialization code </code>
<code class="c++">void OpenGLscreen::exit() { if (!_init) return; wglMakeCurrent(NULL, NULL); wglDeleteContext(hrc); _init = 0; }</code>
其他提示:
以上是如何优化 Intel HD 3000 上的 OpenGL 初始化以获得更好的性能?的详细内容。更多信息请关注PHP中文网其他相关文章!