判断工程颜色空间方法:
通过renderdoc查看贴图输入格式以及framebuffer里当前屏幕缓存的格式:
判断工程颜色空间方法:
通过renderdoc查看贴图输入格式以及framebuffer里当前屏幕缓存的格式:
参考依据:
1.通过传入贴图属性设置:
1.1 在gama空间下,不管勾不勾选srgb,传入的贴图格式都是GL_COMPRESSED_RGB8_ETC2
1.2 线性空间下,如果勾选了srgb的图,会以GL_COMPRESSED_SRGB8_ETC2格式存在
2.在framebuffer输出中:
2.1 gama空间,在输入缓存区图片,存为GL_RGBA8
2.2 线性空间关闭HDR,在输入缓存区图片,会自动存成GL_SRGB8_ALPHA8格式,为了从线性空间转到伽马空间,抵消最后屏幕的固定gama2.2
2.3 注意:线性空间和伽马空间开启HDR,framebuffer里面贴图的格式会以GL_R11F_G11F_B10F格式存在
总结:
注意:下面所说的图输入默认已勾选sRGB选项,输出指framebuffer缓存的格式
1. 图输入 GL_COMPRESSED_RGB8_ETC2 + 输出GL_RGBA8 = game空间 + 不开启HDR
2. 图输入 GL_COMPRESSED_RGB8_ETC2 + 输出GL_R11F_G11F_B10F = game空间+HDR
3. 图输入 GL_COMPRESSED_SRGB8_ETC2+ 输出GL_SRGB8_ALPHA8 = 线性空间 + 不开启HDR
4. 图输入 GL_COMPRESSED_SRGB8_ETC2+ 输出GL_R11F_G11F_B10F = 线性空间+ HDR