源战役客户端
您最多选择25个主题 主题必须以字母或数字开头,可以包含连字符 (-),并且长度不得超过35个字符

63 行
1.9 KiB

  1. Shader "MyShader/Scan01"
  2. {
  3. Properties
  4. {
  5. _Color("Color", Color) = (1,1,1,1)
  6. _Emissionstr("Emissionstr", Float) = 0
  7. _Masktex("Masktex", 2D) = "white" {}
  8. _Gridlinetex("Gridlinetex", 2D) = "white" {}
  9. _Gridlinestr("Gridlinestr", Float) = 1
  10. _Scantex("Scantex", 2D) = "white" {}
  11. _Scanstr("Scanstr", Float) = 0.2
  12. _Scanspeed("Scan speed", Float) = 0.5
  13. [HideInInspector] _texcoord( "", 2D ) = "white" {}
  14. [HideInInspector] __dirty( "", Int ) = 1
  15. }
  16. SubShader
  17. {
  18. Tags{ "RenderType" = "Transparent" "Queue" = "Transparent+0" "IgnoreProjector" = "True" "IsEmissive" = "true" }
  19. Cull Back
  20. ZWrite Off
  21. Blend One One
  22. CGPROGRAM
  23. #include "UnityShaderVariables.cginc"
  24. #pragma target 3.0
  25. #pragma surface surf Unlit keepalpha noshadow noambient novertexlights nolightmap nodynlightmap nodirlightmap nofog nometa noforwardadd
  26. struct Input
  27. {
  28. float4 vertexColor : COLOR;
  29. float2 uv_texcoord;
  30. };
  31. uniform float _Emissionstr;
  32. uniform float4 _Color;
  33. uniform sampler2D _Masktex;
  34. uniform float4 _Masktex_ST;
  35. uniform sampler2D _Gridlinetex;
  36. uniform float4 _Gridlinetex_ST;
  37. uniform float _Gridlinestr;
  38. uniform sampler2D _Scantex;
  39. uniform float _Scanspeed;
  40. uniform float _Scanstr;
  41. inline half4 LightingUnlit( SurfaceOutput s, half3 lightDir, half atten )
  42. {
  43. return half4 ( 0, 0, 0, s.Alpha );
  44. }
  45. void surf( Input i , inout SurfaceOutput o )
  46. {
  47. float2 uv_Masktex = i.uv_texcoord * _Masktex_ST.xy + _Masktex_ST.zw;
  48. float2 uv_Gridlinetex = i.uv_texcoord * _Gridlinetex_ST.xy + _Gridlinetex_ST.zw;
  49. float mulTime8 = _Time.y * _Scanspeed;
  50. float2 temp_cast_0 = (mulTime8).xx;
  51. float2 uv_TexCoord6 = i.uv_texcoord + temp_cast_0;
  52. o.Emission = ( i.vertexColor * _Emissionstr * _Color * ( tex2D( _Masktex, uv_Masktex ).r * ( ( tex2D( _Gridlinetex, uv_Gridlinetex ).r * _Gridlinestr ) * ( tex2D( _Scantex, uv_TexCoord6 ).r * _Scanstr ) ) ) ).rgb;
  53. o.Alpha = _Color.a;
  54. }
  55. ENDCG
  56. }
  57. }