Shader "Custom/RGBtoHSV" {
Properties
{
_H("hue",Range(0,360))=0.1
_S("saturation",Range(0,1.0))=0
_V("value",Range(0, 1.0)) = 0
_A("Alpha", Range(0,1.0))=1.0
}
SubShader
{
Tags { "Queue"="Transparent" "RenderType"="Transparent" }
Pass
{
CGPROGRAM
#pragma vertex vert
#pragma fragment frag
#pragma target 2.0
uniform fixed _H;
uniform fixed _S;
uniform fixed _V;
uniform fixed _A;
fixed4 HSVtoRGB()
{
fixed R;
fixed G;
fixed B;
if (_S == 0)
{
R = G = B = _V;
}
else
{
_H /= 60;
fixed i = (int)_H;
fixed f = _H-i;
fixed a = _V*(1 - _S);
fixed b = _V*(1 - f*_S);
fixed c = _V*(1 - (1 - f)*_S);
if (i == 0)
{
R = _V; G = c; B = a;
}
else if (i == 1)
{
R = b; G = _V; B = a;
}
else if (i ==