Version: 2017.3

GL.sRGBWrite

切换到手册
public static bool sRGBWrite ;

描述

控制是否在进行渲染时执行从线性到 sRGB 的颜色转换。

该属性仅在使用 Linear Color Space 渲染时需要。 通常,当使用线性颜色空间时,非 HDR 渲染纹理被视为 sRGB 数据 (即“常规颜色”),并且片元着色器输出被视为线性颜色值。因此,默认情况下, 片元着色器颜色值被转换为 sRGB。

但如果您知道片元着色器因某种原因已经输出了 sRGB 颜色值,并且您希望 暂时关闭从线性到 sRGB 的写入颜色转换,则可使用此属性来实现。

并非所有平台上均支持关闭 sRGB 写入的功能(通常“基于区块”的移动 GPU 无法支持),因此这被视作“最后手段的功能”。通常,最好使用相应的颜色空间标志(线性与 sRGB) 来创建 RenderTextures,并且不要在向其进行渲染的过程中切换这些转换。

另请参阅:Linear Color SpaceRenderTexture.sRGBRenderTextureReadWritePlayerSettings.colorSpace