gpt4 book ai didi

c - 无法从 OpenGL 3.2/3.3 检索版本信息

转载 作者:太空宇宙 更新时间:2023-11-03 23:35:22 25 4
gpt4 key购买 nike

我已按照此处的基本说明进行操作:

http://www.opengl.org/wiki/Tutorial:_OpenGL_3.1_The_First_Triangle_%28C%2B%2B/Win%29#Rendering_Context_Creation

我唯一调整的是将上下文创建为 3.2 或 3.3:

const int attributes[] =
{
WGL_CONTEXT_MAJOR_VERSION_ARB, 3,
WGL_CONTEXT_MINOR_VERSION_ARB, 2,
WGL_CONTEXT_FLAGS_ARB, WGL_CONTEXT_FORWARD_COMPATIBLE_BIT_ARB,
0
};

然后在创建上下文(成功返回 TRUE)后,我检查版本:

// Double check the version (old way)
const GLubyte *const pszGLVersion = glGetString(GL_VERSION);

// Double check the version (new way)
GLint glVersion[2];
glGetIntegerv(GL_MAJOR_VERSION, &glVersion[0]);
glGetIntegerv(GL_MINOR_VERSION, &glVersion[1]);

但是,pszGLVersion 为 NULL,glVersion[0] 和 glVersion[1] 都未初始化!

为什么OpenGL 3.2 & 3.3 context创建成功,但是获取不到版本信息?

最佳答案

您是否使上下文成为当前上下文?您会注意到 glGetString 不采用上下文参数,它适用于当前上下文。在调用 wglMakeCurrent 之前,您不能使用它,默认情况下,新创建的上下文不会成为当前上下文。

关于c - 无法从 OpenGL 3.2/3.3 检索版本信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5304555/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com