63 lines
1.0 KiB
Plaintext
63 lines
1.0 KiB
Plaintext
Shader "Hidden/GrayscaleNode"
|
|
{
|
|
Properties
|
|
{
|
|
_A ("_RGB", 2D) = "white" {}
|
|
}
|
|
SubShader
|
|
{
|
|
Pass //Luminance
|
|
{
|
|
CGPROGRAM
|
|
#include "UnityCG.cginc"
|
|
#pragma vertex vert_img
|
|
#pragma fragment frag
|
|
|
|
sampler2D _A;
|
|
|
|
float4 frag(v2f_img i) : SV_Target
|
|
{
|
|
float lum = Luminance( tex2D( _A, i.uv ) );
|
|
return float4( lum.xxx, 1);
|
|
}
|
|
ENDCG
|
|
}
|
|
|
|
Pass //Natural Classic
|
|
{
|
|
CGPROGRAM
|
|
#include "UnityCG.cginc"
|
|
#pragma vertex vert_img
|
|
#pragma fragment frag
|
|
|
|
sampler2D _A;
|
|
|
|
float4 frag ( v2f_img i ) : SV_Target
|
|
{
|
|
float lum = dot ( tex2D ( _A, i.uv ), float3( 0.299,0.587,0.114 ) );
|
|
return float4( lum.xxx, 1 );
|
|
}
|
|
ENDCG
|
|
}
|
|
|
|
Pass //Old School
|
|
{
|
|
CGPROGRAM
|
|
#include "UnityCG.cginc"
|
|
#pragma vertex vert_img
|
|
#pragma fragment frag
|
|
|
|
sampler2D _A;
|
|
|
|
float4 frag ( v2f_img i ) : SV_Target
|
|
{
|
|
float3 rgbValue = tex2D ( _A, i.uv ).rgb;
|
|
float lum = ( rgbValue.r + rgbValue.g + rgbValue.b ) / 3;
|
|
return float4( lum.xxx, 1 );
|
|
}
|
|
ENDCG
|
|
}
|
|
|
|
}
|
|
}
|