在 VTK 9.5 中,vtkToneMappingPass 属于后期处理(Post-processing)渲染管线。它通过压缩高动态范围(HDR)并增强局部对比度,使体绘制的暗部细节更清晰、亮部不溢出,从而提升整体立体感。
核心原理
通常 vtkGPUVolumeRayCastMapper 计算出的颜色值可能超过 1.0(尤其是开启高 Specular 功率后)。Tone Mapping 会将这些值映射到显示器能表现的范围,并应用曝光度和对比度调整。
C++ 实现步骤
#include<vtkRenderStepsPass.h>#include<vtkToneMappingPass.h>