opengl中默认帧缓冲区的深度组件的内部格式是什么

what's the internal format of default framebuffer's depth component in opengl

glblitframebuffer需要匹配的内部格式,那么默认framebuffer的深度分量的内部格式是什么?有标准吗?我找不到相关文档。

我的笔记本电脑的 nvidia 卡需要 GL_DEPTH_COMPONENT24。但是选项有 16 和 32。我想知道其他供应商是否有所不同。

很少有充分的理由将 FBO 的深度 blit 到默认深度缓冲区。如果您正在渲染到一个 FBO,并且您需要在 blit 之后进行渲染,最好在另一个 FBO 中进行渲染,然后将其 blit 到默认的帧缓冲区。

也就是说,当您创建 OpenGL 上下文时,您可以要求默认深度缓冲区存储一些位数。如何执行此操作取决于您创建上下文的方式。

但是,实施不一定要符合您的要求。所以你需要问你收到了什么。你需要employ glGetFramebufferAttachmentParameter。这样,您就可以从 GL_DEPTH 附件中查询 GL_FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE​