AVProVideo-Internal-Blit.shader 1.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. Shader "AVProVideo/Internal/Blit"
  2. {
  3. Properties
  4. {
  5. _SrcTex("Texture", 2D) = "white" { }
  6. }
  7. SubShader
  8. {
  9. Tags
  10. {
  11. "IgnoreProjector" = "True"
  12. "PreviewType" = "Plane"
  13. }
  14. Lighting Off
  15. Cull Off
  16. ZWrite Off
  17. ZTest Always
  18. Pass
  19. {
  20. Name "BLIT"
  21. CGPROGRAM
  22. #pragma vertex vert
  23. #pragma fragment frag
  24. #include "UnityCG.cginc"
  25. #include "../AVProVideo.cginc"
  26. struct appdata_t
  27. {
  28. float4 vertex : POSITION;
  29. float2 texcoord : TEXCOORD0;
  30. };
  31. struct v2f
  32. {
  33. float4 vertex : SV_POSITION;
  34. float2 uv : TEXCOORD0;
  35. };
  36. uniform sampler2D _SrcTex;
  37. uniform float4 _SrcTex_ST;
  38. v2f vert(appdata_t v)
  39. {
  40. v2f o;
  41. o.vertex = UnityObjectToClipPos(v.vertex);
  42. o.uv = TRANSFORM_TEX(v.texcoord, _SrcTex);
  43. return o;
  44. }
  45. half4 frag(v2f i) : SV_Target
  46. {
  47. if (i.uv.x < 0.0f || i.uv.y < 0.0f || i.uv.x > 1.0f || i.uv.y > 1.0f)
  48. return half4(0.0f, 0.0f, 0.0f, 0.0f);
  49. return SampleRGBA(_SrcTex, i.uv);
  50. }
  51. ENDCG
  52. }
  53. }
  54. Fallback off
  55. }