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.
 
 
 

135 lines
2.1 KiB

Shader "Hidden/DynamicAppendNode"
{
Properties
{
_A ("_A", 2D) = "white" {}
_B ("_B", 2D) = "white" {}
_C ("_C", 2D) = "white" {}
_D ("_D", 2D) = "white" {}
_Mask("_Mask", Vector) = (0,0,0,0)
}
SubShader
{
CGINCLUDE
#include "UnityCG.cginc"
#pragma vertex vert_img
#pragma fragment frag
sampler2D _A;
sampler2D _B;
sampler2D _C;
sampler2D _D;
float4 _Mask;
ENDCG
Pass //0
{
Name "1111"
CGPROGRAM
float4 frag(v2f_img i) : SV_Target
{
float4 a = tex2D(_A, i.uv);
float4 b = tex2D(_B, i.uv);
float4 c = tex2D(_C, i.uv);
float4 d = tex2D(_D, i.uv);
return float4(a.x,b.x,c.x,d.x)*_Mask;
}
ENDCG
}
Pass //1
{
Name "1120"
CGPROGRAM
float4 frag(v2f_img i) : SV_Target
{
float4 a = tex2D(_A, i.uv);
float4 b = tex2D(_B, i.uv);
float4 c = tex2D(_C, i.uv);
return float4(a.x,b.x,c.xy)*_Mask;
}
ENDCG
}
Pass //2
{
Name "1201"
CGPROGRAM
float4 frag(v2f_img i) : SV_Target
{
float4 a = tex2D(_A, i.uv);
float4 b = tex2D(_B, i.uv);
float4 d = tex2D(_D, i.uv);
return float4(a.x,b.xy,d.x)*_Mask;
}
ENDCG
}
Pass //3
{
Name "1300"
CGPROGRAM
float4 frag(v2f_img i) : SV_Target
{
float4 a = tex2D(_A, i.uv);
float4 b = tex2D(_B, i.uv);
return float4(a.x,b.xyz)*_Mask;
}
ENDCG
}
Pass //4
{
Name "2011"
CGPROGRAM
float4 frag(v2f_img i) : SV_Target
{
float4 a = tex2D(_A, i.uv);
float4 c = tex2D(_C, i.uv);
float4 d = tex2D(_D, i.uv);
return float4(a.xy,c.x,d.x)*_Mask;
}
ENDCG
}
Pass //5
{
Name "2020"
CGPROGRAM
float4 frag(v2f_img i) : SV_Target
{
float4 a = tex2D(_A, i.uv);
float4 c = tex2D(_C, i.uv);
return float4(a.xy,c.xy)*_Mask;
}
ENDCG
}
Pass //6
{
Name "3001"
CGPROGRAM
float4 frag(v2f_img i) : SV_Target
{
float4 a = tex2D(_A, i.uv);
float4 d = tex2D(_D, i.uv);
return float4(a.xyz,d.x)*_Mask;
}
ENDCG
}
Pass //7
{
Name "4000"
CGPROGRAM
float4 frag(v2f_img i) : SV_Target
{
float4 a = tex2D(_A, i.uv);
return a*_Mask;
}
ENDCG
}
}
}