summaryrefslogtreecommitdiff
path: root/Assets/Bundle/Shaders/Common/Image/common_img_buzz.shader
diff options
context:
space:
mode:
Diffstat (limited to 'Assets/Bundle/Shaders/Common/Image/common_img_buzz.shader')
-rw-r--r--Assets/Bundle/Shaders/Common/Image/common_img_buzz.shader75
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