SunShafts.shader 1.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. // Upgrade NOTE: replaced 'mul(UNITY_MATRIX_MVP,*)' with 'UnityObjectToClipPos(*)'
  2. Shader "Hidden/SunShaftsShader" {
  3. Properties {
  4. _MainTex ("Base (RGB)", 2D) = "" {}
  5. _ColorBuffer ("Color (RGB)", 2D) = "" {}
  6. }
  7. // Shader code pasted into all further CGPROGRAM blocks
  8. CGINCLUDE
  9. #include "UnityCG.cginc"
  10. struct v2f {
  11. float4 pos : POSITION;
  12. float2 uv : TEXCOORD0;
  13. };
  14. sampler2D _MainTex;
  15. sampler2D _ColorBuffer;
  16. float sunShaftIntensity;
  17. float4 sunColor;
  18. v2f vert( appdata_img v ) {
  19. v2f o;
  20. o.pos = UnityObjectToClipPos(v.vertex);
  21. o.uv = v.texcoord.xy;
  22. return o;
  23. }
  24. half4 frag(v2f i) : COLOR
  25. {
  26. half4 depthMask = (tex2D(_MainTex, i.uv.xy));
  27. depthMask = depthMask * depthMask;
  28. return depthMask * sunColor * sunShaftIntensity;
  29. }
  30. ENDCG
  31. Subshader {
  32. Blend One One
  33. Pass {
  34. ZTest Always Cull Off ZWrite Off
  35. Fog { Mode off }
  36. CGPROGRAM
  37. #pragma fragmentoption ARB_precision_hint_fastest
  38. #pragma vertex vert
  39. #pragma fragment frag
  40. ENDCG
  41. }
  42. }
  43. Fallback off
  44. } // shader