You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

59 lines
1.2 KiB

  1. Shader "Hidden/SwitchNode"
  2. {
  3. Properties
  4. {
  5. _A ("_A", 2D) = "white" {}
  6. _B ("_B", 2D) = "white" {}
  7. _C ("_C", 2D) = "white" {}
  8. _D ("_D", 2D) = "white" {}
  9. _E ("_E", 2D) = "white" {}
  10. _F ("_F", 2D) = "white" {}
  11. _G ("_G", 2D) = "white" {}
  12. _H ("_H", 2D) = "white" {}
  13. _I ("_I", 2D) = "white" {}
  14. }
  15. SubShader
  16. {
  17. Pass
  18. {
  19. CGPROGRAM
  20. #include "UnityCG.cginc"
  21. #pragma vertex vert_img
  22. #pragma fragment frag
  23. sampler2D _A;
  24. sampler2D _B;
  25. sampler2D _C;
  26. sampler2D _D;
  27. sampler2D _E;
  28. sampler2D _F;
  29. sampler2D _G;
  30. sampler2D _H;
  31. sampler2D _I;
  32. float _Current;
  33. float4 frag( v2f_img i ) : SV_Target
  34. {
  35. if( _Current == 0 )
  36. return tex2D( _A, i.uv );
  37. else if( _Current == 1 )
  38. return tex2D( _B, i.uv );
  39. else if( _Current == 2 )
  40. return tex2D( _C, i.uv );
  41. else if( _Current == 3 )
  42. return tex2D( _D, i.uv );
  43. else if( _Current == 4 )
  44. return tex2D( _E, i.uv );
  45. else if( _Current == 5 )
  46. return tex2D( _F, i.uv );
  47. else if( _Current == 6 )
  48. return tex2D( _G, i.uv );
  49. else if( _Current == 7 )
  50. return tex2D( _H, i.uv );
  51. else
  52. return tex2D( _I, i.uv );
  53. }
  54. ENDCG
  55. }
  56. }
  57. }