Advertisement
Guest User

Unlit Stencil

a guest
Mar 19th, 2018
77
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.77 KB | None | 0 0
  1. // Unity built-in shader source. Copyright (c) 2016 Unity Technologies. MIT license (see license.txt)
  2.  
  3. // Unlit shader. Simplest possible textured shader.
  4. // - no lighting
  5. // - no lightmap support
  6. // - no per-material color
  7.  
  8. Shader "StencilBuffer/Unlit" {
  9. Properties {
  10. _MainTex ("Base (RGB)", 2D) = "white" {}
  11. }
  12.  
  13. SubShader {
  14. Tags { "RenderType"="Opaque" }
  15.  
  16. Stencil
  17. {
  18. Ref 1
  19. Comp equal
  20. Pass Keep
  21. }
  22.  
  23. Pass {
  24. CGPROGRAM
  25. #pragma vertex vert
  26. #pragma fragment frag
  27. #pragma target 2.0
  28. #pragma multi_compile_fog
  29.  
  30. #include "UnityCG.cginc"
  31.  
  32. struct appdata_t {
  33. float4 vertex : POSITION;
  34. float2 texcoord : TEXCOORD0;
  35. UNITY_VERTEX_INPUT_INSTANCE_ID
  36. };
  37.  
  38. struct v2f {
  39. float4 vertex : SV_POSITION;
  40. float2 texcoord : TEXCOORD0;
  41. UNITY_FOG_COORDS(1)
  42. UNITY_VERTEX_OUTPUT_STEREO
  43. };
  44.  
  45. sampler2D _MainTex;
  46. float4 _MainTex_ST;
  47.  
  48. v2f vert (appdata_t v)
  49. {
  50. v2f o;
  51. UNITY_SETUP_INSTANCE_ID(v);
  52. UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(o);
  53. o.vertex = UnityObjectToClipPos(v.vertex);
  54. o.texcoord = TRANSFORM_TEX(v.texcoord, _MainTex);
  55. UNITY_TRANSFER_FOG(o,o.vertex);
  56. return o;
  57. }
  58.  
  59. fixed4 frag (v2f i) : SV_Target
  60. {
  61. fixed4 col = tex2D(_MainTex, i.texcoord);
  62. UNITY_APPLY_FOG(i.fogCoord, col);
  63. UNITY_OPAQUE_ALPHA(col.a);
  64. return col;
  65. }
  66. ENDCG
  67. }
  68. }
  69.  
  70. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement