gpt4 book ai didi

opengl - 延迟渲染 vs 前向渲染 + early-z

转载 作者:行者123 更新时间:2023-12-04 14:11:17 26 4
gpt4 key购买 nike

如果是前向渲染,那么FS执行的次数是(numberOfAllPixels * numberOfLights),如果是延迟渲染,那么FS执行的次数是(numberOfVisiblePixels * numberOfLights)。
所以如果我在前向渲染中加入early-z,那么FS执行的次数也变成了(numberOfVisiblePixels * numberOfLights),那么延迟渲染是不是有什么好处呢?

最佳答案

在前向渲染中,您必须多次重新渲染整个场景。在延迟渲染中,您渲染场景一次,就是这样。
重新渲染整个场景意味着重新做一堆工作,包括但不限于:

  • 场景的CPU处理。也就是说,遍历场景图并发出渲染命令。
  • 绘图命令之间状态变化的 GPU 处理..
  • GPU 读取网格的顶点数组。
  • 顶点着色器执行。

  • 所有这些只需要在延迟渲染中发生一次。
    并且不要忘记“early-z”不是免费的。不仅必须生成这些三角形,而且还必须将它们光栅化。他们必须深入到处理管道中才能被剔除。这不是什么大不了的事,但也不是什么都没有。
    所以是的,前向渲染中的深度预传递意味着您只在绝对必要时运行 FS。但是你仍然在运行一大堆不必要的东西。

    关于opengl - 延迟渲染 vs 前向渲染 + early-z,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64057384/

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