dup*_*per 3 opengl graphics textures framebuffer render-to-texture
我正在尝试将具有内部格式的纹理附加GL_R32UI到帧缓冲区,以用作ID缓冲区。但是,即使它是唯一的附件,也要glCheckFramebufferStatus不断提出GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT。
这对我来说很奇怪,因为OpenGL 4.2规范似乎GL_R32UI表明OpenGL实现是附加到帧缓冲区时OpenGL实现必须支持的格式之一。我怀疑这是驱动程序错误。我是对的,还是有人可以告诉我我所忽略的东西?
我解决了自己的问题。
void glTexImage2D(GLenum target,
GLint level,
GLint internalFormat,
GLsizei width,
GLsizei height,
GLint border,
GLenum format,
GLenum type,
const GLvoid * data);
Run Code Online (Sandbox Code Playgroud)
调用glTexImage2D创建纹理时,即使您要为data参数传递空指针,第7个参数“ format”也需要与第3个“ internalFormat”参数相对应。如果内部格式是整数格式,则需要提供的格式GL_RED_INTEGER,而不是的格式GL_RED。
| 归档时间: |
|
| 查看次数: |
1423 次 |
| 最近记录: |