Color spaces issues are such a pain, especially when you create color data at the middle of the chain, and a pile of libs and apps separate this to the display... Here I only worry about gamma transform.
Shadertoy addicts are coding in this web site webGLSL shaders, which in my case are rendered through google chrome on linux ubuntu and displayed on a calibrated monitor.
Is one layer already doing the gamma transform, or should I do pow(color,1./2.2) at the end of my rendering ? For me (linux,etc), it seems I must do it. Is it also true on windows, mac OS, whether Angle or Native OpenGL is used (windows), whatever the browser ? The point is that often shaders look ok on windows and very dark on linux, for instance, both people being sure of their settings and qualibration.
pow(c, 1/2.2)
at the end of the pipeline. Your trained eye will immediately see which is good and which is over-done. Over-done gamma should result in banding. $\endgroup$