如果不应用Bloom,HDR渲染是否有任何好处?


23

目前,我在游戏中使用基于图像的光源进行环境照明。我对天空立方体贴图进行采样,以获取漫反射和镜面照明。目前,我使用HDR渲染管道-天空盒使用16位存储空间。我绘制了一个16位的rendertarget,然后最后使用tonemapping运算符将值缩放到0.0-1.0范围内以绘制到后缓冲区。

最近我注意到,当我删除Bloom后期处理器时,我的大多数渲染管道基本上变得毫无意义。较高的动态范围值实际上什么也没做-在后期处理的最后阶段,它们只是被处理成较低的动态范围值。

我说对了,我还是可以只使用低动态范围管道并在Photoshop中手动设置天空盒的色调吗?这将使管道更加简单。除了Bloom之外,我是否还有其他原因想要HDR数据?


请注意,HDR管道确实需要HDR数据。您可以使用传统的每通道8位纹理,但仍然可以从HDR管道中受益。
msell 2013年

Answers:


43

除了提供原始数据作为布隆过滤器的基础之外,HDR在许多地方都发挥了重要作用。本质上,在任何缩放或累加照明值的地方看起来都将有所不同,并且在HDR中进行操作时将更加真实/物理上正确。

最重要的地方之一就是环境反射。如您所知,大多数非金属材料在法向入射时的镜面反射率都非常低,例如2%到5%。因此,反射的亮度仅为反射环境的2%到5%。如果您没有HDR环境(包括天空,光源等,具有逼真的亮度水平),则将导致不自然的黑暗,褪色的反射。在HDR环境下,尽管总体镜面反射水平较低,但反射看起来自然并保持对比度。

这是一个示例,我使用了5%规格的灰色球体和Paul Debevec的HDR光探测器之一绘制的环境图。该图像中没有色调映射或泛光。

LDR和HDR反射的比较

任何有光泽的表面都会出现此问题。汽车,玻璃窗和水很常见。您可以通过缩放或更改LDR立方体贴图来解决这个问题,但是HDR立方体贴图的好处是无论材料或光照环境如何,它都“可以正常工作”。


除了反射以外,HDR对于光累积正确起作用也很重要。当您的场景中有多个光源(可能是环境光源和定向光源),或者是几个会聚的聚光灯等时,即使没有单独的光源亮度超过1.0,也有可能总光线超过1.0。 。如果您使用色调映射平滑地保留多余的亮度,而不是简单地将其饱和到1.0并剪切掉其中的任何内容,则可以改善视觉效果。

是否比较色调映射,摘自《神秘海域2》

这是《神秘海域2》中的一个示例(此图像可以在John Hable的GDC演讲的幻灯片126中找到)。如您所见,在没有色调映射的情况下,角色的脸颊和额头上的灯光变得太亮的区域显示出令人不快的黄色调(由于红色和绿色通道在蓝色之前已饱和),并且完全失去了细节。饱和区域。


最后,HDR出现的另一个地方是后处理效果,例如运动模糊和景深。尽管这可能会很昂贵,但是在HDR中执行整个后处理链会带来更为现实的结果。这是运动模糊发生的示例:

LDR和HDR运动模糊的比较

进行模糊处理时,HDR图像的明亮区域将保持明亮和坚硬,而在LDR图像中,它们将变得柔和和暗淡。如上所示,HDR后处理可以更好地模拟真实相机中发生的情况,因此看起来更“电影化”。

因此,HDR照明和渲染的功能不仅限于绽放。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.