Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/asp.net-mvc-3/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Opengl 将深度/模具缓冲区附加到帧缓冲区时出错_Opengl_Depth Buffer_Stencil Buffer - Fatal编程技术网

Opengl 将深度/模具缓冲区附加到帧缓冲区时出错

Opengl 将深度/模具缓冲区附加到帧缓冲区时出错,opengl,depth-buffer,stencil-buffer,Opengl,Depth Buffer,Stencil Buffer,我通过向OpenGL发出以下一系列命令来创建深度/模具缓冲区: glBindTexture(GL_TEXTURE_2D, 0) glGenTextures(1, &TextureId) glBindTexture(GL_TEXTURE_2D, TextureId) glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST) glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_F

我通过向OpenGL发出以下一系列命令来创建深度/模具缓冲区:

glBindTexture(GL_TEXTURE_2D, 0)
glGenTextures(1, &TextureId)
glBindTexture(GL_TEXTURE_2D, TextureId)
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST)
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST)
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_REPEAT)
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_REPEAT)
glTexParameteri(GL_TEXTURE_2D, GL_DEPTH_TEXTURE_MODE, GL_INTENSITY)
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_COMPARE_MODE, GL_COMPARE_R_TO_TEXTURE)
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_COMPARE_FUNC, GL_LEQUAL)
glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA8, 640, 480,  0, GL_RGBA, GL_UNSIGNED_BYTE, NULL);
glBindTexture(GL_TEXTURE_2D, 0)
然后我尝试用

glFramebufferTexture2D(GL_FRAMEBUFFER, GL_DEPTH_STENCIL_ATTACHMENT, GL_TEXTURE_2D, TextureId, 0)
但是调用
glCheckFramebufferStatusEXT
返回
GL\u FRAMEBUFFER\u complete\u ATTACHMENT
。如果我没有附加深度模具缓冲区,这个测试就可以了(但很明显,显示器是坏的)

你们有什么线索吗

编辑
更改:我已将纹理创建简化为基本纹理格式。

好的,当我删除所有尾随文本时,问题消失。

好的,当我删除所有尾随的文本时,问题消失了。

您附加到
GL\u DEPTH\u STENCIL\u附件的纹理中既没有深度也没有模具信息。如果要将纹理附加到
GL\u DEPTH\u STENCIL\u附件
,请确保它的图像格式具有。

要附加到
GL\u DEPTH\u STENCIL\u附件
的纹理中既没有深度信息,也没有模具信息。如果要将纹理附加到
GL_DEPTH_STENCIL_ATTACHMENT
,你要确保它的图像格式是正确的。

现在OpenGL版本不需要EXT扩展~~~~~

现在OpenGL版本不需要EXT扩展~~~~~

任何GL错误被触发?任何GL错误被触发?我想你学会了不能在同一个功能中混合扩展和核心。我想你学会了不能混合扩展和核心在相同的功能中。我认为它们仍然支持向后兼容,但显然混合使用EXT和非EXT版本是不好的:)我认为它们仍然支持向后兼容,但混合使用EXT和非EXT版本显然是不好的:)