diff options
Diffstat (limited to 'Assets/ThirdParty/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_PosterizeNode.shader')
-rw-r--r-- | Assets/ThirdParty/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_PosterizeNode.shader | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/Assets/ThirdParty/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_PosterizeNode.shader b/Assets/ThirdParty/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_PosterizeNode.shader new file mode 100644 index 00000000..099d105c --- /dev/null +++ b/Assets/ThirdParty/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_PosterizeNode.shader @@ -0,0 +1,35 @@ +Shader "Hidden/PosterizeNode" +{ + Properties + { + _A ( "_RGBA", 2D ) = "white" {} + _B ( "_Power", 2D ) = "white" {} + } + + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + uniform sampler2D _A; + uniform sampler2D _B; + + float4 frag ( v2f_img i ) : SV_Target + { + float4 rgba = tex2D ( _B, i.uv ); + float power = tex2D ( _A, i.uv ).r; + if ( power < 1 ) + return float4(0,0,0,0); + float divideOp = 256.0 / float ( (int)power ); + float4 finalColor = ( floor ( rgba * divideOp ) / divideOp ); + + return finalColor; + } + ENDCG + } + } +} |