我正在我的设备上尝试以下支持 OpenGL3 的代码(“OpenGL 版本字符串:3.3.0 NVIDIA 310.19”):
glBindFramebuffer(GL_FRAMEBUFFER, 0);
checkGlError();
glGetFramebufferAttachmentParameteriv(GL_FRAMEBUFFER, GL_FRONT_LEFT, GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE, &ret);
checkGlError();
if (ret == GL_NONE)
throw std::runtime_error("something is really bad there or FRONT_LEFT isn't your default buffer. Check it!");
glGetFramebufferAttachmentParameteriv(GL_FRAMEBUFFER, GL_FRONT_LEFT, GL_FRAMEBUFFER_ATTACHMENT_RED_SIZE, &ret);
checkGlError();
checkGlError
是一个宏,它将检查 OpenGL 错误并告诉发生错误的行。
我尝试使用 Qt 和 SDL 初始化我的上下文。此外,我使用 glew 来访问该功能。
在第一次打电话给我时,glGetFramebufferAttachmentParameteriv
我得到了 INVALID_ENUM 错误。会是什么?