Gamma校正与色调映射

原创
2022/07/05 17:53
阅读数 716

Gamma校正

人眼感受到的光照强度和信号强度不是线性关系,同时CRT显示器也非常巧合的和人眼类似,输入电压产生约为输入电压的2.2次幂的亮度。为了使显示设备的输出亮度与现实接近,可以对原始信号进行一次预补偿,这种反向纠正过程称为Gamma校正。

sRGB是一种色彩标准,sRGB 空间其实是已经做过Gamma纠正后的了。使用sRGB空间更能有效的利用8位通道精度。

HDR色调映射

颜色的范围被限制在0.0到1.0,实际上光照强度是没有范围限制的。因为显示器只能显示在0.0到1.0范围之内的颜色,最终需要将HDR转到LDR,这一过程叫做色调映射。

我们需要用浮点帧缓冲来保存HDR数据,在光照计算的时候我们允许颜色值暂时超过1.0,最后再通过色调映射到0到1.0。最简单的色调映射算法是Reinhard色调映射:

    vec3 mapped = hdrColor / (hdrColor + vec3(1.0));
展开阅读全文
加载中
点击引领话题📣 发布并加入讨论🔥
0 评论
0 收藏
0
分享
返回顶部
顶部