Hi,
after reading a couple of resources in web about Gamma Correction I still feel confused.
In my experiment pixel shader simply outputs linear gradient to backbuffer.
- First case: backbuffer format is not sRGB, value of linear gradient is outputted without any modifications:
[attachment=22107:ng.jpg]
- Second case: backbuffer format is sRGB, value of linear gradient is outputted without any modifications:
[attachment=22104:g1.jpg]
- Third case: backbuffer format is sRGB, value of linear gradient is outputted with correction of pow(u, 1/2.2):
[attachment=22105:g1div2.2.jpg]
- Fourth case: backbuffer format is sRGB, value of linear gradient is outputted with correction of pow(u, 2.2):
[attachment=22106:g2.2.jpg]
As you see, first and last results are almost the same. So, my question is why we need sRGB backbuffers plus modifying final output pixel shader if we can simply use non-sRGB texture? The result is almost the same:
[attachment=22108:pixcmp.jpg]