glTexImage2D上的OpenGL 3.2 GL_INVALID_ENUM(GL_PROXY_TEXTURE_2D ...)

Mic*_*bbé 3 opengl

我正在将引擎从OpenGL 1.1转换为OpenGL 3.2.抛出一个GL_INVALID_ENUM,但我无法弄清楚原因.

我在glTexImage2D()之前调用glGetError()来清除它.当我完成后,glGetError()返回GL_INVALID_ENUM.

      glActiveTexture( GL_TEXTURE0 );
      glTexImage2D( GL_PROXY_TEXTURE_2D,   // target
                    0,                     // level
                    4,                     // internalformat
                    32, 32,                // width & height
                    0,                     // border
                    GL_RGBA,               // format
                    GL_UNSIGNED_BYTE,      // type
                    NULL );                // pixels
Run Code Online (Sandbox Code Playgroud)

gen*_*ult 5

传递真实internalFormat.我认为纯通道计数方法在某些时候已被弃用.

  • 恕我直言,它应该是一个生成的INVALID_ENUM,因为你唯一允许传递给函数的是一个符号常量.它的方式不一致. (4认同)