gpt4 book ai didi

android - 如何正确使用 glDiscardFramebufferEXT

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:06:05 26 4
gpt4 key购买 nike

这个问题与 OpenGL ES 2.0 扩展有关 EXT_discard_framebuffer .

我不清楚哪些情况证明使用此扩展是合理的。如果我调用 glDiscardFramebufferEXT() 并将指定的可附加图像置于未定义状态,这意味着:
- 我不再关心内容,因为它已经与 glReadPixels() 一起使用了,
- 我不再关心内容,因为它已经与 glCopyTexSubImage() 一起使用了,
- 我一开始就不应该进行渲染。

显然,只有前两种情况有意义,或者还有其他情况 glDiscardFramebufferEXT() 有用吗?如果是,这些情况是什么?

最佳答案

glDiscardFramebufferEXT 是对驱动程序的性能提示。移动 GPU 使用基于图 block 的延迟渲染。在这种情况下,将任何帧缓冲区设置为丢弃可以节省 gpu 工作和内存带宽,因为它不需要将其写回统一内存。

通常你会丢弃:

  • 深度缓冲区,因为它没有出现在屏幕上。它仅在 gpu 上渲染期间使用。
  • msaa 缓冲区,因为它被解析为较小的缓冲区以呈现在屏幕上。

此外,任何仅用于在 GPU 上渲染的缓冲区都应该被丢弃,这样它就不会写回统一内存。

关于android - 如何正确使用 glDiscardFramebufferEXT,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11810988/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com