我正在使用wlgGetProcAddress
使用创建的上下文来获取函数wglCreateContext
.我已经设置了上下文wglMakeCurrent
.我得到一个有效的函数指针glGetStringi
,但我得到NULL
了glGetString
.我认为glGetString
并且glGetStringi
是在相同版本的OpenGL(1.0)中引入的.任何想法为什么我得到这个NULL
?
const GLubyte* (*glGetString)(GLenum);
const GLubyte* (*glGetStringi)(GLenum, GLuint);
glGetString = reinterpret_cast<decltype(glGetString)>(wglGetProcAddress("glGetString"));
glGetStringi = reinterpret_cast<decltype(glGetStringi)>(wglGetProcAddress("glGetStringi"));
Run Code Online (Sandbox Code Playgroud)
如果它很重要,我有一个驱动程序版本13.251.0.0的Radeon HD 7950.
glGetStringi
推出时间远远超过1.0 - 我相信它是3.3.更糟糕的是,在核心3.3+配置文件中,您无法使用glGetString(GL_EXTENSIONS)
,但需要使用glGetStringi
,这对于较低配置文件版本是不可用的.
MSDN文档说wglGetProcAddress
只返回扩展功能的地址.而且,他们所说的"扩展"是GL 1.1中没有的所有内容.
归档时间: |
|
查看次数: |
1022 次 |
最近记录: |