为什么在使用 JPEG 图片时必须使用 2.2 的伽马?

Why do I have to use a gamma of 2.2 when using a JPEG picture?

在渲染过程中,纹理文件的gamma为2.2。但是纯色不需要这种伽马校正,特别是如果 RGB 值来自光谱特征化。

那么,为什么我必须在我的纹理文件中使用 2.2 的伽玛值? 为什么在 CG 世界中我们使用 2.2 伽马图像? 为什么我们不对具有真实颜色的图像使用 1 的伽玛值?

大多数硬件和驱​​动程序都假定您使用 2.2(或 sRGB,两者非常相似)的伽玛。因此,如果您尝试显示具有线性 RGB 信息(即 1.0 的伽玛)的原始文件,显示图像将太亮。

3D 图形硬件是为游戏开发人员而不是图形研究人员设计的,因此他们希望输入(用于纹理缓冲区之类的东西)是用 2.2 伽玛编码的资产。与线性编码相同的位数。

如果您控制整个渲染管道,那么您当然可以使用线性 RGB(或其他线性光谱采样)并在最后将结果发送到显示器或文件时应用伽玛。