43 lines
816 B
Plaintext
43 lines
816 B
Plaintext
![]() |
Shader "MY/Grayscale"
|
||
|
{
|
||
|
Properties
|
||
|
{
|
||
|
_MainTex("Base (RGB)", 2D) = "white" {}
|
||
|
_RampTex("Base (RGB)", 2D) = "grayscaleRamp" {}
|
||
|
}
|
||
|
|
||
|
SubShader
|
||
|
{
|
||
|
Tags{"Queue" = "Geometry" "IgnoreProjector" = "True"}
|
||
|
Pass
|
||
|
{
|
||
|
ZTest Always Cull Off ZWrite Off
|
||
|
Fog { Mode off }
|
||
|
|
||
|
CGPROGRAM
|
||
|
|
||
|
#pragma vertex vert_img
|
||
|
#pragma fragment frag
|
||
|
#pragma fragmentoption ARB_precision_hint_fastest
|
||
|
#include "UnityCG.cginc"
|
||
|
|
||
|
uniform sampler2D _MainTex;
|
||
|
uniform sampler2D _RampTex;
|
||
|
uniform half _RampOffset;
|
||
|
|
||
|
fixed4 frag(v2f_img i) : COLOR
|
||
|
{
|
||
|
fixed4 original = tex2D(_MainTex, i.uv);
|
||
|
fixed grayscale = Luminance(original.rgb);
|
||
|
half2 remap = half2 (grayscale + _RampOffset, .5);
|
||
|
fixed4 output = tex2D(_RampTex, remap);
|
||
|
output.a = original.a;
|
||
|
return output;
|
||
|
}
|
||
|
|
||
|
ENDCG
|
||
|
|
||
|
}
|
||
|
}
|
||
|
|
||
|
}
|