Preview_PosterizeNode.shader 661 B

123456789101112131415161718192021222324252627282930313233343536
  1. Shader "Hidden/PosterizeNode"
  2. {
  3. Properties
  4. {
  5. _A ( "_RGBA", 2D ) = "white" {}
  6. _B ( "_Power", 2D ) = "white" {}
  7. }
  8. SubShader
  9. {
  10. Pass
  11. {
  12. CGPROGRAM
  13. #include "UnityCG.cginc"
  14. #include "Preview.cginc"
  15. #pragma vertex vert_img
  16. #pragma fragment frag
  17. uniform sampler2D _A;
  18. uniform sampler2D _B;
  19. float4 frag ( v2f_img i ) : SV_Target
  20. {
  21. float4 rgba = tex2D ( _B, i.uv );
  22. float power = tex2D ( _A, i.uv ).r;
  23. if ( power < 1 )
  24. return float4(0,0,0,0);
  25. float divideOp = 256.0 / float ( (int)power );
  26. float4 finalColor = ( floor ( rgba * divideOp ) / divideOp );
  27. return finalColor;
  28. }
  29. ENDCG
  30. }
  31. }
  32. }