Skip to content

Archive

Tag: tonemapping
上一篇讲了新的材质系统。本篇将讲tone mapping的改进。 Tone mapping的进化 KlayGE早在2006年的时候就引入了HDR的流水线。和当年的其他引擎一样,HDR的内容经过渲染,需要通过tone mapping转成LDR之后送去显示。这时候,tone mapping的质量就可以决定最后的画面细节度和对比度。 在KlayGE的发展过程中,tone mapping这个看似简单的步骤经历了多次进化。 Reinhard 早期的普遍做法是一篇叫做Photographic Tone Reproduction for Digital Images的论文,大家就用作者的名字称它为Reinhard tone mapping。这是个经验公式,把HDR到LDR的变换简单的描述了出来。 float3 ReinhardToneMapping(float3 color, float adapted_lum) { con ...
在Napoleon314的强烈推荐下,KlayGE也改用了来自Uncharted 2的Filmic Tonemapping。虽然只要改2行代码,但Filmic Tonemapping所带来的鲜艳颜色和对比度是其他常用tonemapping所不可比拟的,完全消除了那种灰蒙蒙的感觉。贴两张图看看效果: