【发布时间】:2012-05-13 16:17:36
【问题描述】:
我正在使用 OpenGL 帧缓冲区对象 (FBO) 在 iOS 上实现模板阴影。代码可以工作——也就是说,从视觉上看,模板缓冲区正在完成这项工作,而且性能似乎还不错。
但是,当我通过 OpenGL ES Analyzer 工具运行应用程序时,它会抱怨“不存在帧缓冲区附件”和“缺少帧缓冲区附件”。我无法理解这些消息,因为 FBO 确实有颜色、深度和模板的附件。调用 glCheckFramebufferStatus() 返回 GL_FRAMEBUFFER_COMPLETE,表示没有问题。
这是 Instrument 的 OpenGL Analyzer 中的错误吗?
另见this thread,它没有给出答案,但提出了同样的问题。
【问题讨论】:
-
我在 FBO 中看到了同样的情况,它只有一个纹理支持它,尽管 FBO 按预期运行,但分析器会抛出相同的错误。我倾向于认为这是一个错误,但我还没有完成自己的调查。
-
你找到答案了吗?我在这里遇到同样的问题
-
@PeeS 我从来没有这样做过,我仍然有这个问题。这是正确的皇家痛苦。另外一点信息:如果我使用“OpenGL ES Capture”查看帧的实际函数调用,则警告引用的帧缓冲区实际上似乎具有所有正确的部分。所以警告的原因是双重神秘的。
-
@OldPeculier 这正是发生在我身上的事情。我有一个屏幕外 FBO,texture2d 附加为颜色附件 0,depth-texture2d 附加为深度附件,我可以看到一切渲染完美,通过 ES Capture 捕获帧显示可疑,但 Instruments 一直说公牛。我已经问过apple.com devforums.apple.com/message/683346#683346 找不到为什么会发生这种情况。很高兴知道我并不孤单;)希望我们能找到原因。以下是它的样子stravaganza.pl/GL/1.pngstravaganza.pl/GL/0.png
标签: ios opengl-es instruments