|
|
- Shader "MyShader/Scan01"
- {
- Properties
- {
- _Color("Color", Color) = (1,1,1,1)
- _Emissionstr("Emissionstr", Float) = 0
- _Masktex("Masktex", 2D) = "white" {}
- _Gridlinetex("Gridlinetex", 2D) = "white" {}
- _Gridlinestr("Gridlinestr", Float) = 1
- _Scantex("Scantex", 2D) = "white" {}
- _Scanstr("Scanstr", Float) = 0.2
- _Scanspeed("Scan speed", Float) = 0.5
- [HideInInspector] _texcoord( "", 2D ) = "white" {}
- [HideInInspector] __dirty( "", Int ) = 1
- }
-
- SubShader
- {
- Tags{ "RenderType" = "Transparent" "Queue" = "Transparent+0" "IgnoreProjector" = "True" "IsEmissive" = "true" }
- Cull Back
- ZWrite Off
- Blend One One
-
- CGPROGRAM
- #include "UnityShaderVariables.cginc"
- #pragma target 3.0
- #pragma surface surf Unlit keepalpha noshadow noambient novertexlights nolightmap nodynlightmap nodirlightmap nofog nometa noforwardadd
- struct Input
- {
- float4 vertexColor : COLOR;
- float2 uv_texcoord;
- };
-
- uniform float _Emissionstr;
- uniform float4 _Color;
- uniform sampler2D _Masktex;
- uniform float4 _Masktex_ST;
- uniform sampler2D _Gridlinetex;
- uniform float4 _Gridlinetex_ST;
- uniform float _Gridlinestr;
- uniform sampler2D _Scantex;
- uniform float _Scanspeed;
- uniform float _Scanstr;
-
- inline half4 LightingUnlit( SurfaceOutput s, half3 lightDir, half atten )
- {
- return half4 ( 0, 0, 0, s.Alpha );
- }
-
- void surf( Input i , inout SurfaceOutput o )
- {
- float2 uv_Masktex = i.uv_texcoord * _Masktex_ST.xy + _Masktex_ST.zw;
- float2 uv_Gridlinetex = i.uv_texcoord * _Gridlinetex_ST.xy + _Gridlinetex_ST.zw;
- float mulTime8 = _Time.y * _Scanspeed;
- float2 temp_cast_0 = (mulTime8).xx;
- float2 uv_TexCoord6 = i.uv_texcoord + temp_cast_0;
- o.Emission = ( i.vertexColor * _Emissionstr * _Color * ( tex2D( _Masktex, uv_Masktex ).r * ( ( tex2D( _Gridlinetex, uv_Gridlinetex ).r * _Gridlinestr ) * ( tex2D( _Scantex, uv_TexCoord6 ).r * _Scanstr ) ) ) ).rgb;
- o.Alpha = _Color.a;
- }
-
- ENDCG
- }
- }
|