diff options
author | chai <chaifix@163.com> | 2021-09-30 09:39:47 +0800 |
---|---|---|
committer | chai <chaifix@163.com> | 2021-09-30 09:39:47 +0800 |
commit | 76745de7a04e46d18319c734067fa49641370014 (patch) | |
tree | a4c3c36bc58a4b31c8dc3024c68818e9e0d7de94 /Assets/Bundle/Shaders/Common/Image/common_img_buzz.shader | |
parent | b781f9ecf36bcc6c614538ac427fa2eb8f1e29d2 (diff) |
*Unit Preprocessing
Diffstat (limited to 'Assets/Bundle/Shaders/Common/Image/common_img_buzz.shader')
-rw-r--r-- | Assets/Bundle/Shaders/Common/Image/common_img_buzz.shader | 75 |
1 files changed, 75 insertions, 0 deletions
diff --git a/Assets/Bundle/Shaders/Common/Image/common_img_buzz.shader b/Assets/Bundle/Shaders/Common/Image/common_img_buzz.shader new file mode 100644 index 00000000..467733f9 --- /dev/null +++ b/Assets/Bundle/Shaders/Common/Image/common_img_buzz.shader @@ -0,0 +1,75 @@ +// 蜂鸣 + +Shader "Erika/Common/Image/Buzz" +{ + Properties + { + _MainTex("Texture", 2D) = "white" {} + _TileOffset("TileOffset", Vector) = (1,1,0,0) + } + + SubShader + { + Tags { "RenderType" = "Opaque" "Queue" = "Transparent-1"} + LOD 100 + + ZWrite Off + ZTest LEqual + + Blend One Zero + + Pass + { + CGPROGRAM + #pragma vertex vert + #pragma fragment frag + + #include "UnityCG.cginc" + + #include "Assets/Bundle/Shaders/Include/ImageEffect.cginc" + + struct v2f + { + float2 uv : TEXCOORD0; + float4 vertex : SV_POSITION; + }; + + sampler2D _MainTex; + float4 _MainTex_ST; + + sampler2D _CameraDepthTexture; + float4 _CameraDepthTexture_ST; + + sampler2D _UnitDepthTexture; + float4 _UnitDepthTexture_ST; + + float4 _TileOffset; // 角色的范围 + + v2f vert(appdata_img v) + { + v2f o; + o.vertex = UnityObjectToClipPos(v.vertex); + o.uv = TRANSFORM_TEX(v.texcoord, _MainTex); + return o; + } + + fixed4 frag(v2f i) : SV_Target + { + fixed2 uv = i.uv; + float depth0 = tex2D(_CameraDepthTexture, uv).r; + float depth1 = tex2D(_UnitDepthTexture, uv).r; + + fixed4 color = tex2D(_MainTex, uv); + + if (abs(depth0 - depth1) < 0.001f && depth1 != 1) + { + color.r = 1; + } + + return color; + } + ENDCG + } + } + +} // shader |