HUSL is a human-friendly alternative to HSL. ( http://www.husl-colors.org ) GLSL port by William Malo ( https://github.com/williammalo ) Put this code in your fragment shader.
xyzToRgb (vec3 xyz )
rgbToXyz (vec3 rgb )
xyzToLuv (vec3 xyz )
luvToXyz (vec3 luv )
luvToLch (vec3 luv )
lchToLuv (vec3 lch )
huslToLch (vec3 husl )
lchToHusl (vec3 husl )
huslpToLch (vec3 huslp )
lchToHuslp (vec3 lch )
lchToRgb (vec3 lch )
rgbToLch (vec3 rgb )
huslToRgb (vec3 husl )
rgbToHusl (vec3 rgb )
huslpToRgb (vec3 huslp )
rgbToHuslp (vec3 rgb )
luvToRgb (vec3 luv )
xyzToRgb (vec4 xyz )
rgbToXyz (vec4 rgb )
xyzToLuv (vec4 xyz )
luvToXyz (vec4 luv )
luvToLch (vec4 luv )
lchToLuv (vec4 lch )
huslToLch (vec4 husl )
lchToHusl (vec4 husl )
huslpToLch (vec4 huslp )
lchToHuslp (vec4 lch )
lchToRgb (vec4 lch )
rgbToLch (vec4 rgb )
huslToRgb (vec4 husl )
rgbToHusl (vec4 rgb )
huslpToRgb (vec4 huslp )
rgbToHuslp (vec4 rgb )
luvToRgb (vec4 luv )
xyzToRgb (float x, float y, float z )
rgbToXyz (float r, float g, float b )
xyzToLuv (float x, float y, float z )
luvToXyz (float l, float u, float v )
luvToLch (float l, float u, float v )
lchToLuv (float l, float c, float h )
huslToLch (float h, float s, float l )
lchToHusl (float h, float s, float l )
huslpToLch (float h, float s, float l )
lchToHuslp (float l, float c, float h )
lchToRgb (float l, float c, float h )
rgbToLch (float r, float g, float b )
huslToRgb (float h, float s, float l )
rgbToHusl (float r, float g, float b )
huslpToRgb (float h, float s, float l )
rgbToHuslp (float r, float g, float b )
luvToRgb (float l, float u, float v )
xyzToRgb (float x, float y, float z, float a )
rgbToXyz (float r, float g, float b, float a )
xyzToLuv (float x, float y, float z, float a )
luvToXyz (float l, float u, float v, float a )
luvToLch (float l, float u, float v, float a )
lchToLuv (float l, float c, float h, float a )
huslToLch (float h, float s, float l, float a )
lchToHusl (float h, float s, float l, float a )
huslpToLch (float h, float s, float l, float a )
lchToHuslp (float l, float c, float h, float a )
lchToRgb (float l, float c, float h, float a )
rgbToLch (float r, float g, float b, float a )
huslToRgb (float h, float s, float l, float a )
rgbToHusl (float r, float g, float b, float a )
huslpToRgb (float h, float s, float l, float a )
rgbToHuslp (float r, float g, float b, float a )
luvToRgb (float l, float u, float v, float a )