HDR 是英文 High-Dynamic Range 的缩写,中文译名为高动态光照渲染。HDR可以令3D 画面更像真,就像人的眼睛在游戏现场中的视线效果,大幅提升游戏的真实感。
HDR并不是想许多玩家理解的那样就是简单的“高亮”,不是让画面有更大的亮度或是对比度,大家都知道,当人从黑暗的地方走到阳光下时,我们的眼睛会不由自主的迷起来,那是因为在黑暗的地方,人为了更好的分辨物体,瞳孔张开很大,以便吸收光线;而突然到了光亮处瞳孔来不及收缩,视网膜上的视神经无法承受如此多的光线,人自然会迷上眼睛阻止大量光线冲击视神经。我们的眼睛非常敏感,而PC就不具备这种功能。所以,HDR的最终效果因该是亮处的效果是鲜亮的,而黑暗处你也可以清晰的分辨物体的轮廓,位置和深度,而不是以前的一团黑。动态、趋近真实的物理环境是HDR的特效表现原则。
一、不断变换的光强
这两张图片表现了游戏的曝光控制功能,模拟人眼自动适应光线变化的能力,而不是照相机。很明显左边的图木板反射的光强度要高,但它不等同于HDR。在游戏中,如果你盯着一个面向阳光直射的物体,物体表面会出现丰富的光反射(也就是左图的效果);如果盯着不放,物体表面的泛光会渐渐淡出,还原出更多的细节(右图的效果)。HDR特效是变化的,因此称做高动态光照。在这方面,Valve的设计非常的精巧。
二、HDR的立方体映射
先看HDR的立方体映射【图】1、2。
在HDR的立方体映射【图】1中,手枪闪亮的金属表面很实际的反映出周围事物留下的倒影,蓝天映衬在击锤左侧,而褐色的建筑出现在右侧,该场景中地面和前方的场景是比较暗的,以前的光渲染方式肯定会将手枪表面和周围场景一致化,做出来的效果就是一团黑或者手枪表面是永远单调的反光。
HDR的立方体映射【图】2则表现强烈的光束从窗外投射进来,枪支的金属表面上反射出异常明亮的光影。
三、HDR开/关画质对比
HDR特效是实时产生的,你把它关掉当然也能玩,但这些小细节和其它特效一起,共同产生了逼真的画面。想看看关掉HDR会有什么效果,可以参考以下对比画面:
半条命2:消失的海岸HDR未开【图】3 半条命2:消失的海岸HDR打开【图】3
左边是关掉HDR之后的效果,以现有眼光来看也还不错,但绝大多数人体验过HDR的效果后,就不愿意再面对那些平淡无奇的画面了。
四、HDR技术的实现
HDR就是一种新的模型,它可以将画面中的每个象素色彩和亮度值用实际物理参数或是线性函数来表示。这样每个参数都可以用实际数值来表示,而且不再限定整数。在实际的应用中,电脑无法达到无限取值范围,所以nVidia采用的是有Industrial Linght and Magic开发的16位OpenEXR格式,需要1个bit位用来标志“指数”,5个bit用来存放指数的值,10个bit存放色度坐标(u,v)的尾数,其动态范围从6.14×10-5到6.41×104,在显卡中处理分为3个步骤:
1、将画面用高光照动态范围渲染,并储存每个象素的亮度特性,而着色器、纹理过滤以及缓存操作都支持浮点格式;
2、将HDRI画面转成低动态范围的画面(RGBA或是sRGB);
3、色彩和Gamma校正后传送到显示设备。
帝国时代3中的HDR