为什么" glRenderbufferStorageMultisample "给我一个无效的操作错误(1282)?
我尝试将场景渲染为多重采样的FBO,其颜色/深度仅为缓冲区(此处无纹理)&然后将多重采样FBO解析为具有颜色/深度纹理的简单FBO,但OpenGL只是不让我...
glEnable(GL_MULTISAMPLE);
glGenFramebuffers(1, &m_Id);
glBindFramebuffer(GL_FRAMEBUFFER, m_Id);
glGenRenderbuffers(1, &m_ColorId);
glBindRenderbuffer(GL_RENDERBUFFER, m_ColorId);
glRenderbufferStorageMultisample(GL_RENDERBUFFER, numOfSamples, GL_RGBA8, width, height);
glFramebufferRenderbuffer(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0, GL_RENDERBUFFER, m_ColorId);
glDrawBuffer(GL_COLOR_ATTACHMENT0);
glBindFramebuffer(GL_FRAMEBUFFER, 0);
给我错误的一行是" glRenderbufferStorageMultisample ",有趣的是," glRenderbufferStorage "没有按'吨...
答案 0 :(得分:1)
根据https://www.khronos.org/registry/OpenGL-Refpages/gl4/html/glRenderbufferStorageMultisample.xhtml的文档,您应该检查一些OpenGL宏的参数值(用于glRenderbufferStorageMultisample
调用)。
根据提供的详细信息,检查numOfSamples
值(目前为32),这是我最好的建议。我相信它可能太高了。
numOfSamples
的最大值甚至可能受到视频卡功能的限制。
希望这可能有所帮助, 斯特凡诺