4

我使用 OpenGL 4.3(核心)。我的视频卡是支持 OpenGL 4.3 的 NVidia Quadro4000。我决定尝试glClearTexImage () 函数。我将 GLEW 从 1.9.0 更新到 1.10.0,它映射了这个方法。当输入 glClearTexImage 行时,Visual Studio 会抛出以下异常:

“XXXX_XXXX.exe:0xC0000005 中 0x757AC9F5 处未处理的异常:执行位置 0x00000000 的访问冲突。”

代码很简单:

//...Here the texture is created....

    GLuint clearColor = 0;
glBindTexture   (_target,newTex);
glClearTexImage(GL_TEXTURE_2D, 0, GL_BGRA, GL_UNSIGNED_BYTE, &clearColor);
4

2 回答 2

5

检查 glClearTexImage 的值,例如

printf("%p\n", glClearTexImage);

它最有可能为 NULL。如果是这样,请检查 GLEW_ARB_clear_texture - 它肯定也会为 0。

于 2013-08-20T11:03:46.820 回答
2

没有发布驱动程序支持任何最近的 OpenGL 4.4 功能。您将获得的最接近的是 NVIDIA 的beta驱动程序。

另外,如果你要使用一个函数,你应该首先检查核心版本/扩展是否可用。

于 2013-08-20T11:02:03.037 回答