PlaneOcclusionShader.shader 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116
  1. Shader "AR/Occlusion"
  2. {
  3. // URP SubShader
  4. SubShader
  5. {
  6. PackageRequirements
  7. {
  8. "com.unity.render-pipelines.universal": "12.0"
  9. }
  10. Tags
  11. {
  12. "RenderType"="Opaque"
  13. "Queue" = "Geometry-1"
  14. "RenderPipeline" = "UniversalPipeline"
  15. }
  16. ZWrite On
  17. ZTest LEqual
  18. ColorMask 0
  19. Pass
  20. {
  21. HLSLPROGRAM
  22. #pragma vertex vert
  23. #pragma fragment frag
  24. #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Core.hlsl"
  25. struct appdata
  26. {
  27. float4 vertex : POSITION;
  28. UNITY_VERTEX_INPUT_INSTANCE_ID
  29. };
  30. struct v2f
  31. {
  32. float4 vertex : SV_POSITION;
  33. UNITY_VERTEX_OUTPUT_STEREO
  34. };
  35. v2f vert (appdata v)
  36. {
  37. v2f o;
  38. UNITY_SETUP_INSTANCE_ID(v);
  39. ZERO_INITIALIZE(v2f, o);
  40. UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(o);
  41. o.vertex = TransformObjectToHClip(v.vertex.xyz);
  42. return o;
  43. }
  44. real4 frag (v2f i) : SV_Target
  45. {
  46. UNITY_SETUP_STEREO_EYE_INDEX_POST_VERTEX(i);
  47. return real4(0.0, 0.0, 0.0, 0.0);
  48. }
  49. ENDHLSL
  50. }
  51. }
  52. // Built-in Render Pipeline Subshader
  53. SubShader
  54. {
  55. Tags { "RenderType"="Opaque" }
  56. Tags { "Queue" = "Geometry-1" }
  57. ZWrite On
  58. ZTest LEqual
  59. ColorMask 0
  60. Pass
  61. {
  62. CGPROGRAM
  63. #pragma vertex vert
  64. #pragma fragment frag
  65. #include "UnityCG.cginc"
  66. struct appdata
  67. {
  68. float4 vertex : POSITION;
  69. UNITY_VERTEX_INPUT_INSTANCE_ID
  70. };
  71. struct v2f
  72. {
  73. float4 vertex : SV_POSITION;
  74. UNITY_VERTEX_OUTPUT_STEREO
  75. };
  76. v2f vert (appdata v)
  77. {
  78. v2f o;
  79. UNITY_SETUP_INSTANCE_ID(v);
  80. UNITY_INITIALIZE_OUTPUT(v2f, o);
  81. UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(o);
  82. o.vertex = UnityObjectToClipPos(v.vertex);
  83. return o;
  84. }
  85. fixed4 frag (v2f i) : SV_Target
  86. {
  87. UNITY_SETUP_STEREO_EYE_INDEX_POST_VERTEX(i);
  88. return fixed4(0.0, 0.0, 0.0, 0.0);
  89. }
  90. ENDCG
  91. }
  92. }
  93. }