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.
 
 
 

62 lines
973 B

Shader "Hidden/ComponentMaskNode"
{
Properties
{
_A ("_A", 2D) = "white" {}
}
SubShader
{
Pass
{
CGPROGRAM
#include "UnityCG.cginc"
#pragma vertex vert_img
#pragma fragment frag
sampler2D _A;
float _Singular;
float4 _Order;
float4 frag( v2f_img i ) : SV_Target
{
float4 a = tex2D( _A, i.uv );
float4 r = 0;
if(_Singular == 0)
r = a.x;
else if(_Singular == 1)
r = a.y;
else if(_Singular == 2)
r = a.z;
else if(_Singular == 3)
r = a.w;
if ( _Order.x == 0 )
r.x = a.x;
else if(_Order.y == 0)
r.x = a.y;
else if(_Order.z == 0)
r.x = a.z;
else if(_Order.w == 0)
r.x = a.w;
if(_Order.y == 1)
r.y = a.y;
else if(_Order.z == 1)
r.y = a.z;
else if(_Order.w == 1)
r.y = a.w;
if(_Order.z == 2)
r.z = a.z;
else if(_Order.w == 2)
r.z = a.w;
if(_Order.w == 3)
r.w = a.w;
return r;
}
ENDCG
}
}
}