【发布时间】:2015-09-20 12:02:29
【问题描述】:
根据我目前所读到的内容,在片段着色器中使用丢弃或更改深度值将禁用早期深度测试,从而降低着色器性能。
现在我有一个应用,使用丢弃只会产生很小的影响,但更改深度值会严重降低性能: http://potree.org/demo/experimental/early_depth/examples/philly.html (如果对您来说太快,请增加点大小并放大)
- 将质量设置为“圆圈”将调用丢弃,以便将点渲染为圆圈。
- 将质量设置为“插值”将更改片段深度值。
我得到了这些结果:
- 正方形:55fps
- 圈数:52fps
- 插值:30fps
当使用插值时,会发生一些额外的事情,但我已经检查过它是“gl_FragDepthEXT = ...”,任何类型的值都会影响性能。
【问题讨论】: