diff options
Diffstat (limited to 'Assets/Bundle/Shaders/Unit/Effect/unit_effect_blur.shader')
-rw-r--r-- | Assets/Bundle/Shaders/Unit/Effect/unit_effect_blur.shader | 67 |
1 files changed, 67 insertions, 0 deletions
diff --git a/Assets/Bundle/Shaders/Unit/Effect/unit_effect_blur.shader b/Assets/Bundle/Shaders/Unit/Effect/unit_effect_blur.shader new file mode 100644 index 00000000..6a3aad0b --- /dev/null +++ b/Assets/Bundle/Shaders/Unit/Effect/unit_effect_blur.shader @@ -0,0 +1,67 @@ +// 1:09 https://www.youtube.com/watch?v=LhqI_yj3zO0 +Shader "Erika/Unit/Effect/unit_effect_blur" +{ + Properties + { + _MainTex("Texture", 2D) = "white" {} + _BlurTex("Texture", 2D) = "black" {} + _MaskColor ("Mask Color", Color) = (1,1,1,1) + } + SubShader + { + Tags { "RenderType"="Opaque" "Queue" = "Transparent"} + LOD 100 + + Blend SrcAlpha OneMinusSrcAlpha + + Pass + { + CGPROGRAM + #pragma vertex vert + #pragma fragment frag + + #include "UnityCG.cginc" + + struct appdata + { + float4 vertex : POSITION; + float2 uv : TEXCOORD0; + }; + + struct v2f + { + float2 uv : TEXCOORD0; + float4 vertex : SV_POSITION; + }; + + sampler2D _MainTex; + float4 _MainTex_ST; + + sampler2D _BlurTex; + float4 _BlurTex_ST; + + fixed4 _MaskColor; + + v2f vert (appdata v) + { + v2f o; + o.vertex = UnityObjectToClipPos(v.vertex); + o.uv = TRANSFORM_TEX(v.uv, _MainTex); + return o; + } + + fixed4 frag (v2f i) : SV_Target + { + float2 uv = i.uv; + fixed4 blur = tex2D(_BlurTex, uv).r; + //uv.x += blur.r; + //uv.y += blur.r; + fixed4 col = tex2D(_MainTex, uv); + col *= blur; + + return col; + } + ENDCG + } + } +} |