Вот тупой вариант:
float3 lrgb = sqrt(gradient4(r * r, g * g, b * b, uv.x));
На картинке снизу sRGB, сверху - псевдо-linear RGB.
Как видим, переходы стади чище, но видны экстремумы и некоторое выцветание.
ПР Прогаем с кенгурой @coding_with_kangaroo · 236 subscribers 
float3 lrgb = sqrt(gradient4(r * r, g * g, b * b, uv.x));