Hello,
so far I have never used sRGB color space in OpenGL (neither sRGB textures nor sRGB framebuffers).
Maybe because the sRGB framebuffers were introduced late (in OpenGL 3.0 I guess).
So I did not really care about the whole color space topic at all (shame on me).
My final linear color framebuffer was just looking fine on any sRGB monitor I ever had in use.
But I would like to understand a few things better:
1. With my current setup (not using any OpenGL sRGB related stuff), do I actually need to care if
a monitor is using sRGB or something else? I guess not because in my application I am not
aware of the color profile(s) of the connected monitor(s).
2. So what actually happens when the linear color space framebuffer is blit to the default
framebuffer provided by the windowing system and then SwapBuffer() is executed?
Is the windowing system doing any color space conversion? Or the graphics driver?
Or the monitor? I don’t really know how the pipeline is but since I work in linear color
space and the monitor uses sRGB color profile I guess at some stage (sofware or hardware)
there is probably a conversion?
3. What changes in “2.” if I would use an sRGB framebuffer but keep the linear default framebuffer
provided by the windowing sytem? I guess glBlitFramebuffer would convert from sRGB to linear
and then the pipeline continues the same way as for “2.”?
4. What changes in “2.” if I would keep the linear framebuffer but would use an sRGB
default framebuffer provided by the windowing system ([FONT=Verdana]WGL_COLORSPACE_SRGB_EXT)?
[LEFT][FONT=Verdana]I guess glBlitFramebuffer would convert from linear to sRGB and then the rest of the
pipeline to the monitor should be a bit different?[/LEFT]
Help is very appreciated![/FONT][SUB][/SUB][/FONT]