acesFilmicToneMapping
acesFilmicToneMapping
一个后期处理节点,它采用行业标准的 ACES (学院色彩编码系统) 曲线,将高动态范围 (HDR) 颜色优雅地“压缩”到显示器支持的低动态范围 (LDR) 内。其主要目的是防止高光区域过曝,同时产生具有电影质感的丰富色彩和悦目过渡。
核心优势
无需深入研究复杂的色彩科学,即可轻松为渲染结果赋予电影级的视觉质感。它能极其优雅地处理高光,保留亮部细节,避免出现生硬的“死白”区域,从而显著提升画面的真实感和艺术表现力。
常见用途
作为照片级真实感渲染(如建筑、产品展示)的最后一步,确保最终输出品质。
管理高对比度光照场景(如室内外穿梭、赛博朋克夜景),平衡亮部与暗部细节。
为高品质风格化艺术(如动画电影、风格化游戏)提供稳定悦目的色彩基底。
与辉光 (Bloom) 等 HDR 特效配合,作为其正确显示在屏幕上的基础。
如何调整
通过调整 `exposure` (曝光) 输入值来控制画面整体亮度。该值类似相机的曝光补偿:大于 1.0 会提亮画面,使色彩更饱和、能量感更强;小于 1.0 会压暗画面,增强对比度和氛围。一个高级用法是通过随时间动态调整 `exposure` 值,来模拟人眼从暗处到亮处时的自动曝光适应过程。
代码示例
1 // 应用 ACES Filmic 色调映射,获得电影感外观
2 vec3 ldrColor = acesFilmicToneMapping( hdrColor, exposure );