PPStack.shader 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889
  1. Shader /*ase_name*/ "Hidden/Templates/PostProcessStack" /*end*/
  2. {
  3. Properties
  4. {
  5. /*ase_props*/
  6. }
  7. SubShader
  8. {
  9. Cull Off
  10. ZWrite Off
  11. ZTest Always
  12. /*ase_pass*/
  13. Pass
  14. {
  15. CGPROGRAM
  16. #pragma vertex Vert
  17. #pragma fragment Frag
  18. #pragma target 3.5
  19. #include "UnityCG.cginc"
  20. /*ase_pragma*/
  21. struct ASEAttributesDefault
  22. {
  23. float3 vertex : POSITION;
  24. float2 texcoord : TEXCOORD0;
  25. /*ase_vdata:p=p;uv0=tc0*/
  26. };
  27. struct ASEVaryingsDefault
  28. {
  29. float4 vertex : SV_POSITION;
  30. float2 texcoord : TEXCOORD0;
  31. float2 texcoordStereo : TEXCOORD1;
  32. #if STEREO_INSTANCING_ENABLED
  33. uint stereoTargetEyeIndex : SV_RenderTargetArrayIndex;
  34. #endif
  35. /*ase_interp(2,):sp=sp.xyzw;uv0=tc0.xy;uv1=tc1;uv2=tc2*/
  36. };
  37. uniform sampler2D _MainTex;
  38. uniform half4 _MainTex_TexelSize;
  39. uniform half4 _MainTex_ST;
  40. /*ase_globals*/
  41. /*ase_funcs*/
  42. float2 TransformTriangleVertexToUV (float2 vertex)
  43. {
  44. float2 uv = (vertex + 1.0) * 0.5;
  45. return uv;
  46. }
  47. ASEVaryingsDefault Vert( ASEAttributesDefault v /*ase_vert_input*/ )
  48. {
  49. ASEVaryingsDefault o;
  50. o.vertex = float4(v.vertex.xy, 0.0, 1.0);
  51. o.texcoord = TransformTriangleVertexToUV (v.vertex.xy);
  52. #if UNITY_UV_STARTS_AT_TOP
  53. o.texcoord = o.texcoord * float2(1.0, -1.0) + float2(0.0, 1.0);
  54. #endif
  55. o.texcoordStereo = TransformStereoScreenSpaceTex (o.texcoord, 1.0);
  56. v.texcoord = o.texcoordStereo;
  57. /*ase_local_var:spn*/float4 ase_ppsScreenPosVertexNorm = float4(o.texcoordStereo,0,1);
  58. /*ase_vert_code:v=ASEAttributesDefault;o=ASEVaryingsDefault*/
  59. return o;
  60. }
  61. float4 Frag (ASEVaryingsDefault i /*ase_frag_input*/ ) : SV_Target
  62. {
  63. /*ase_local_var:spn*/float4 ase_ppsScreenPosFragNorm = float4(i.texcoordStereo,0,1);
  64. /*ase_frag_code:i=ASEVaryingsDefault*/
  65. float4 color = /*ase_frag_out:Frag Color;Float4*/tex2D(_MainTex, i.texcoord )/*end*/;
  66. return color;
  67. }
  68. ENDCG
  69. }
  70. }
  71. CustomEditor "AmplifyShaderEditor.MaterialInspector"
  72. }