in progress changes
parent
f4ba5fc852
commit
fe17ead9c5
Binary file not shown.
Binary file not shown.
@ -0,0 +1,111 @@
|
|||||||
|
Shader "GUI/Text Shader (AlphaClip)"
|
||||||
|
{
|
||||||
|
Properties
|
||||||
|
{
|
||||||
|
_MainTex ("Alpha (A)", 2D) = "white" {}
|
||||||
|
}
|
||||||
|
|
||||||
|
SubShader
|
||||||
|
{
|
||||||
|
LOD 200
|
||||||
|
|
||||||
|
Tags
|
||||||
|
{
|
||||||
|
"Queue" = "Transparent"
|
||||||
|
"IgnoreProjector" = "True"
|
||||||
|
"RenderType" = "Transparent"
|
||||||
|
}
|
||||||
|
|
||||||
|
Pass
|
||||||
|
{
|
||||||
|
Cull Off
|
||||||
|
Lighting Off
|
||||||
|
ZWrite Off
|
||||||
|
Offset -1, -1
|
||||||
|
Fog { Mode Off }
|
||||||
|
//ColorMask RGB
|
||||||
|
Blend SrcAlpha OneMinusSrcAlpha
|
||||||
|
|
||||||
|
CGPROGRAM
|
||||||
|
#pragma vertex vert
|
||||||
|
#pragma fragment frag
|
||||||
|
#include "UnityCG.cginc"
|
||||||
|
|
||||||
|
sampler2D _MainTex;
|
||||||
|
float4 _MainTex_ST;
|
||||||
|
|
||||||
|
struct appdata_t
|
||||||
|
{
|
||||||
|
float4 vertex : POSITION;
|
||||||
|
half4 color : COLOR;
|
||||||
|
float2 texcoord : TEXCOORD0;
|
||||||
|
};
|
||||||
|
|
||||||
|
struct v2f
|
||||||
|
{
|
||||||
|
float4 vertex : POSITION;
|
||||||
|
half4 color : COLOR;
|
||||||
|
float2 texcoord : TEXCOORD0;
|
||||||
|
float2 worldPos : TEXCOORD1;
|
||||||
|
};
|
||||||
|
|
||||||
|
v2f vert (appdata_t v)
|
||||||
|
{
|
||||||
|
v2f o;
|
||||||
|
o.vertex = mul(UNITY_MATRIX_MVP, v.vertex);
|
||||||
|
o.color = v.color;
|
||||||
|
o.texcoord = v.texcoord;
|
||||||
|
o.worldPos = TRANSFORM_TEX(v.vertex.xy, _MainTex);
|
||||||
|
return o;
|
||||||
|
}
|
||||||
|
|
||||||
|
half4 frag (v2f IN) : COLOR
|
||||||
|
{
|
||||||
|
// Sample the texture
|
||||||
|
half4 col = IN.color;
|
||||||
|
col.a *= tex2D(_MainTex, IN.texcoord).a;
|
||||||
|
|
||||||
|
float2 factor = abs(IN.worldPos);
|
||||||
|
float val = 1.0 - max(factor.x, factor.y);
|
||||||
|
|
||||||
|
// Option 1: 'if' statement
|
||||||
|
if (val < 0.0) col.a = 0.0;
|
||||||
|
|
||||||
|
// Option 2: no 'if' statement -- may be faster on some devices
|
||||||
|
//col.a *= ceil(clamp(val, 0.0, 1.0));
|
||||||
|
|
||||||
|
return col;
|
||||||
|
}
|
||||||
|
ENDCG
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
SubShader
|
||||||
|
{
|
||||||
|
LOD 100
|
||||||
|
|
||||||
|
Tags
|
||||||
|
{
|
||||||
|
"Queue" = "Transparent"
|
||||||
|
"IgnoreProjector" = "True"
|
||||||
|
"RenderType" = "Transparent"
|
||||||
|
}
|
||||||
|
|
||||||
|
Pass
|
||||||
|
{
|
||||||
|
Cull Off
|
||||||
|
Lighting Off
|
||||||
|
ZWrite Off
|
||||||
|
Fog { Mode Off }
|
||||||
|
ColorMask RGB
|
||||||
|
AlphaTest Greater .01
|
||||||
|
Blend SrcAlpha OneMinusSrcAlpha
|
||||||
|
ColorMaterial AmbientAndDiffuse
|
||||||
|
|
||||||
|
SetTexture [_MainTex]
|
||||||
|
{
|
||||||
|
Combine Texture * Primary
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,109 @@
|
|||||||
|
Shader "GUI/Text Shader (SoftClip)"
|
||||||
|
{
|
||||||
|
Properties
|
||||||
|
{
|
||||||
|
_MainTex ("Alpha (A)", 2D) = "white" {}
|
||||||
|
}
|
||||||
|
|
||||||
|
SubShader
|
||||||
|
{
|
||||||
|
LOD 200
|
||||||
|
|
||||||
|
Tags
|
||||||
|
{
|
||||||
|
"Queue" = "Transparent"
|
||||||
|
"IgnoreProjector" = "True"
|
||||||
|
"RenderType" = "Transparent"
|
||||||
|
}
|
||||||
|
|
||||||
|
Pass
|
||||||
|
{
|
||||||
|
Cull Off
|
||||||
|
Lighting Off
|
||||||
|
ZWrite Off
|
||||||
|
Offset -1, -1
|
||||||
|
Fog { Mode Off }
|
||||||
|
//ColorMask RGB
|
||||||
|
AlphaTest Greater .01
|
||||||
|
Blend SrcAlpha OneMinusSrcAlpha
|
||||||
|
|
||||||
|
CGPROGRAM
|
||||||
|
#pragma vertex vert
|
||||||
|
#pragma fragment frag
|
||||||
|
|
||||||
|
#include "UnityCG.cginc"
|
||||||
|
|
||||||
|
sampler2D _MainTex;
|
||||||
|
float4 _MainTex_ST;
|
||||||
|
float2 _ClipSharpness = float2(20.0, 20.0);
|
||||||
|
|
||||||
|
struct appdata_t
|
||||||
|
{
|
||||||
|
float4 vertex : POSITION;
|
||||||
|
half4 color : COLOR;
|
||||||
|
float2 texcoord : TEXCOORD0;
|
||||||
|
};
|
||||||
|
|
||||||
|
struct v2f
|
||||||
|
{
|
||||||
|
float4 vertex : POSITION;
|
||||||
|
half4 color : COLOR;
|
||||||
|
float2 texcoord : TEXCOORD0;
|
||||||
|
float2 worldPos : TEXCOORD1;
|
||||||
|
};
|
||||||
|
|
||||||
|
v2f vert (appdata_t v)
|
||||||
|
{
|
||||||
|
v2f o;
|
||||||
|
o.vertex = mul(UNITY_MATRIX_MVP, v.vertex);
|
||||||
|
o.color = v.color;
|
||||||
|
o.texcoord = v.texcoord;
|
||||||
|
o.worldPos = TRANSFORM_TEX(v.vertex.xy, _MainTex);
|
||||||
|
return o;
|
||||||
|
}
|
||||||
|
|
||||||
|
half4 frag (v2f IN) : COLOR
|
||||||
|
{
|
||||||
|
// Softness factor
|
||||||
|
float2 factor = (float2(1.0, 1.0) - abs(IN.worldPos)) * _ClipSharpness;
|
||||||
|
|
||||||
|
// Sample the texture
|
||||||
|
half4 col = IN.color;
|
||||||
|
col.a *= tex2D(_MainTex, IN.texcoord).a;
|
||||||
|
col.a *= clamp( min(factor.x, factor.y), 0.0, 1.0);
|
||||||
|
|
||||||
|
return col;
|
||||||
|
}
|
||||||
|
ENDCG
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
SubShader
|
||||||
|
{
|
||||||
|
LOD 100
|
||||||
|
|
||||||
|
Tags
|
||||||
|
{
|
||||||
|
"Queue" = "Transparent"
|
||||||
|
"IgnoreProjector" = "True"
|
||||||
|
"RenderType" = "Transparent"
|
||||||
|
}
|
||||||
|
|
||||||
|
Pass
|
||||||
|
{
|
||||||
|
Cull Off
|
||||||
|
Lighting Off
|
||||||
|
ZWrite Off
|
||||||
|
Fog { Mode Off }
|
||||||
|
ColorMask RGB
|
||||||
|
AlphaTest Greater .01
|
||||||
|
Blend SrcAlpha OneMinusSrcAlpha
|
||||||
|
ColorMaterial AmbientAndDiffuse
|
||||||
|
|
||||||
|
SetTexture [_MainTex]
|
||||||
|
{
|
||||||
|
Combine Texture * Primary
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,36 @@
|
|||||||
|
Shader "Unlit/Additive Colored"
|
||||||
|
{
|
||||||
|
Properties
|
||||||
|
{
|
||||||
|
_MainTex ("Base (RGB), Alpha (A)", 2D) = "white" {}
|
||||||
|
}
|
||||||
|
|
||||||
|
SubShader
|
||||||
|
{
|
||||||
|
Tags
|
||||||
|
{
|
||||||
|
"Queue" = "Transparent"
|
||||||
|
"IgnoreProjector" = "True"
|
||||||
|
"RenderType" = "Transparent"
|
||||||
|
}
|
||||||
|
|
||||||
|
LOD 100
|
||||||
|
Cull Off
|
||||||
|
Lighting Off
|
||||||
|
ZWrite Off
|
||||||
|
Fog { Mode Off }
|
||||||
|
ColorMask RGB
|
||||||
|
AlphaTest Greater .01
|
||||||
|
Blend One One
|
||||||
|
|
||||||
|
Pass
|
||||||
|
{
|
||||||
|
ColorMaterial AmbientAndDiffuse
|
||||||
|
|
||||||
|
SetTexture [_MainTex]
|
||||||
|
{
|
||||||
|
Combine Texture * Primary
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,35 @@
|
|||||||
|
Shader "Unlit/Depth Cutout"
|
||||||
|
{
|
||||||
|
Properties
|
||||||
|
{
|
||||||
|
_MainTex ("Base (RGB), Alpha (A)", 2D) = "white" {}
|
||||||
|
}
|
||||||
|
|
||||||
|
SubShader
|
||||||
|
{
|
||||||
|
LOD 100
|
||||||
|
|
||||||
|
Tags
|
||||||
|
{
|
||||||
|
"Queue" = "Background"
|
||||||
|
"IgnoreProjector" = "True"
|
||||||
|
}
|
||||||
|
|
||||||
|
Pass
|
||||||
|
{
|
||||||
|
Cull Off
|
||||||
|
Lighting Off
|
||||||
|
Blend Off
|
||||||
|
ColorMask 0
|
||||||
|
ZWrite On
|
||||||
|
ZTest Less
|
||||||
|
AlphaTest Greater .99
|
||||||
|
ColorMaterial AmbientAndDiffuse
|
||||||
|
|
||||||
|
SetTexture [_MainTex]
|
||||||
|
{
|
||||||
|
Combine Texture * Primary
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,20 @@
|
|||||||
|
Shader "Unlit/Depth"
|
||||||
|
{
|
||||||
|
SubShader
|
||||||
|
{
|
||||||
|
Lod 100
|
||||||
|
|
||||||
|
Tags
|
||||||
|
{
|
||||||
|
"Queue" = "Geometry+1"
|
||||||
|
"RenderType"="Opaque"
|
||||||
|
}
|
||||||
|
|
||||||
|
Pass
|
||||||
|
{
|
||||||
|
ZWrite On
|
||||||
|
ZTest LEqual
|
||||||
|
ColorMask 0
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,112 @@
|
|||||||
|
Shader "Unlit/Dynamic Font (AlphaClip)"
|
||||||
|
{
|
||||||
|
Properties
|
||||||
|
{
|
||||||
|
_MainTex ("Alpha (A)", 2D) = "white" {}
|
||||||
|
}
|
||||||
|
|
||||||
|
SubShader
|
||||||
|
{
|
||||||
|
LOD 200
|
||||||
|
|
||||||
|
Tags
|
||||||
|
{
|
||||||
|
"Queue" = "Transparent"
|
||||||
|
"IgnoreProjector" = "True"
|
||||||
|
"RenderType" = "Transparent"
|
||||||
|
}
|
||||||
|
|
||||||
|
Pass
|
||||||
|
{
|
||||||
|
Cull Off
|
||||||
|
Lighting Off
|
||||||
|
ZWrite Off
|
||||||
|
Offset -1, -1
|
||||||
|
Fog { Mode Off }
|
||||||
|
//ColorMask RGB
|
||||||
|
Blend SrcAlpha OneMinusSrcAlpha
|
||||||
|
|
||||||
|
CGPROGRAM
|
||||||
|
#pragma vertex vert
|
||||||
|
#pragma fragment frag
|
||||||
|
#include "UnityCG.cginc"
|
||||||
|
|
||||||
|
sampler2D _MainTex;
|
||||||
|
float4 _MainTex_ST;
|
||||||
|
|
||||||
|
struct appdata_t
|
||||||
|
{
|
||||||
|
float4 vertex : POSITION;
|
||||||
|
half4 color : COLOR;
|
||||||
|
float2 texcoord : TEXCOORD0;
|
||||||
|
};
|
||||||
|
|
||||||
|
struct v2f
|
||||||
|
{
|
||||||
|
float4 vertex : POSITION;
|
||||||
|
half4 color : COLOR;
|
||||||
|
float2 texcoord : TEXCOORD0;
|
||||||
|
float2 worldPos : TEXCOORD1;
|
||||||
|
};
|
||||||
|
|
||||||
|
v2f vert (appdata_t v)
|
||||||
|
{
|
||||||
|
v2f o;
|
||||||
|
o.vertex = mul(UNITY_MATRIX_MVP, v.vertex);
|
||||||
|
o.color = v.color;
|
||||||
|
o.texcoord = v.texcoord;
|
||||||
|
o.worldPos = TRANSFORM_TEX(v.vertex.xy, _MainTex);
|
||||||
|
return o;
|
||||||
|
}
|
||||||
|
|
||||||
|
half4 frag (v2f IN) : COLOR
|
||||||
|
{
|
||||||
|
// Sample the texture
|
||||||
|
//half4 col = tex2D(_MainTex, IN.texcoord) * IN.color;
|
||||||
|
half4 col = IN.color;
|
||||||
|
col.a *= tex2D(_MainTex, IN.texcoord).a;
|
||||||
|
|
||||||
|
float2 factor = abs(IN.worldPos);
|
||||||
|
float val = 1.0 - max(factor.x, factor.y);
|
||||||
|
|
||||||
|
// Option 1: 'if' statement
|
||||||
|
if (val < 0.0) col.a = 0.0;
|
||||||
|
|
||||||
|
// Option 2: no 'if' statement -- may be faster on some devices
|
||||||
|
//col.a *= ceil(clamp(val, 0.0, 1.0));
|
||||||
|
|
||||||
|
return col;
|
||||||
|
}
|
||||||
|
ENDCG
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
SubShader
|
||||||
|
{
|
||||||
|
LOD 100
|
||||||
|
|
||||||
|
Tags
|
||||||
|
{
|
||||||
|
"Queue" = "Transparent"
|
||||||
|
"IgnoreProjector" = "True"
|
||||||
|
"RenderType" = "Transparent"
|
||||||
|
}
|
||||||
|
|
||||||
|
Pass
|
||||||
|
{
|
||||||
|
Cull Off
|
||||||
|
Lighting Off
|
||||||
|
ZWrite Off
|
||||||
|
Fog { Mode Off }
|
||||||
|
ColorMask RGB
|
||||||
|
AlphaTest Greater .01
|
||||||
|
Blend SrcAlpha OneMinusSrcAlpha
|
||||||
|
ColorMaterial AmbientAndDiffuse
|
||||||
|
|
||||||
|
SetTexture [_MainTex]
|
||||||
|
{
|
||||||
|
Combine Texture * Primary
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,109 @@
|
|||||||
|
Shader "Unlit/Dynamic Font (SoftClip)"
|
||||||
|
{
|
||||||
|
Properties
|
||||||
|
{
|
||||||
|
_MainTex ("Alpha (A)", 2D) = "white" {}
|
||||||
|
}
|
||||||
|
|
||||||
|
SubShader
|
||||||
|
{
|
||||||
|
LOD 200
|
||||||
|
|
||||||
|
Tags
|
||||||
|
{
|
||||||
|
"Queue" = "Transparent"
|
||||||
|
"IgnoreProjector" = "True"
|
||||||
|
"RenderType" = "Transparent"
|
||||||
|
}
|
||||||
|
|
||||||
|
Pass
|
||||||
|
{
|
||||||
|
Cull Off
|
||||||
|
Lighting Off
|
||||||
|
ZWrite Off
|
||||||
|
Offset -1, -1
|
||||||
|
Fog { Mode Off }
|
||||||
|
//ColorMask RGB
|
||||||
|
AlphaTest Greater .01
|
||||||
|
Blend SrcAlpha OneMinusSrcAlpha
|
||||||
|
|
||||||
|
CGPROGRAM
|
||||||
|
#pragma vertex vert
|
||||||
|
#pragma fragment frag
|
||||||
|
|
||||||
|
#include "UnityCG.cginc"
|
||||||
|
|
||||||
|
sampler2D _MainTex;
|
||||||
|
float4 _MainTex_ST;
|
||||||
|
float2 _ClipSharpness = float2(20.0, 20.0);
|
||||||
|
|
||||||
|
struct appdata_t
|
||||||
|
{
|
||||||
|
float4 vertex : POSITION;
|
||||||
|
half4 color : COLOR;
|
||||||
|
float2 texcoord : TEXCOORD0;
|
||||||
|
};
|
||||||
|
|
||||||
|
struct v2f
|
||||||
|
{
|
||||||
|
float4 vertex : POSITION;
|
||||||
|
half4 color : COLOR;
|
||||||
|
float2 texcoord : TEXCOORD0;
|
||||||
|
float2 worldPos : TEXCOORD1;
|
||||||
|
};
|
||||||
|
|
||||||
|
v2f vert (appdata_t v)
|
||||||
|
{
|
||||||
|
v2f o;
|
||||||
|
o.vertex = mul(UNITY_MATRIX_MVP, v.vertex);
|
||||||
|
o.color = v.color;
|
||||||
|
o.texcoord = v.texcoord;
|
||||||
|
o.worldPos = TRANSFORM_TEX(v.vertex.xy, _MainTex);
|
||||||
|
return o;
|
||||||
|
}
|
||||||
|
|
||||||
|
half4 frag (v2f IN) : COLOR
|
||||||
|
{
|
||||||
|
// Softness factor
|
||||||
|
float2 factor = (float2(1.0, 1.0) - abs(IN.worldPos)) * _ClipSharpness;
|
||||||
|
|
||||||
|
// Sample the texture
|
||||||
|
half4 col = IN.color;
|
||||||
|
col.a *= tex2D(_MainTex, IN.texcoord).a;
|
||||||
|
col.a *= clamp( min(factor.x, factor.y), 0.0, 1.0);
|
||||||
|
|
||||||
|
return col;
|
||||||
|
}
|
||||||
|
ENDCG
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
SubShader
|
||||||
|
{
|
||||||
|
LOD 100
|
||||||
|
|
||||||
|
Tags
|
||||||
|
{
|
||||||
|
"Queue" = "Transparent"
|
||||||
|
"IgnoreProjector" = "True"
|
||||||
|
"RenderType" = "Transparent"
|
||||||
|
}
|
||||||
|
|
||||||
|
Pass
|
||||||
|
{
|
||||||
|
Cull Off
|
||||||
|
Lighting Off
|
||||||
|
ZWrite Off
|
||||||
|
Fog { Mode Off }
|
||||||
|
ColorMask RGB
|
||||||
|
AlphaTest Greater .01
|
||||||
|
Blend SrcAlpha OneMinusSrcAlpha
|
||||||
|
ColorMaterial AmbientAndDiffuse
|
||||||
|
|
||||||
|
SetTexture [_MainTex]
|
||||||
|
{
|
||||||
|
Combine Texture * Primary
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,99 @@
|
|||||||
|
Shader "Unlit/Dynamic Font"
|
||||||
|
{
|
||||||
|
Properties
|
||||||
|
{
|
||||||
|
_MainTex ("Alpha (A)", 2D) = "white" {}
|
||||||
|
}
|
||||||
|
SubShader
|
||||||
|
{
|
||||||
|
Tags
|
||||||
|
{
|
||||||
|
"Queue"="Transparent"
|
||||||
|
"IgnoreProjector"="True"
|
||||||
|
"RenderType"="Transparent"
|
||||||
|
}
|
||||||
|
|
||||||
|
Cull Off
|
||||||
|
Lighting Off
|
||||||
|
ZWrite Off
|
||||||
|
Fog { Mode Off }
|
||||||
|
Offset -1, -1
|
||||||
|
AlphaTest Greater .01
|
||||||
|
Blend SrcAlpha OneMinusSrcAlpha
|
||||||
|
|
||||||
|
Pass
|
||||||
|
{
|
||||||
|
CGPROGRAM
|
||||||
|
#pragma vertex vert
|
||||||
|
#pragma fragment frag
|
||||||
|
#pragma fragmentoption ARB_precision_hint_fastest
|
||||||
|
|
||||||
|
#include "UnityCG.cginc"
|
||||||
|
|
||||||
|
struct appdata_t
|
||||||
|
{
|
||||||
|
float4 vertex : POSITION;
|
||||||
|
fixed4 color : COLOR;
|
||||||
|
float2 texcoord : TEXCOORD0;
|
||||||
|
};
|
||||||
|
|
||||||
|
struct v2f
|
||||||
|
{
|
||||||
|
float4 vertex : POSITION;
|
||||||
|
fixed4 color : COLOR;
|
||||||
|
float2 texcoord : TEXCOORD0;
|
||||||
|
};
|
||||||
|
|
||||||
|
sampler2D _MainTex;
|
||||||
|
uniform float4 _MainTex_ST;
|
||||||
|
|
||||||
|
v2f vert (appdata_t v)
|
||||||
|
{
|
||||||
|
v2f o;
|
||||||
|
o.vertex = mul(UNITY_MATRIX_MVP, v.vertex);
|
||||||
|
o.color = v.color;
|
||||||
|
o.texcoord = TRANSFORM_TEX(v.texcoord,_MainTex);
|
||||||
|
return o;
|
||||||
|
}
|
||||||
|
|
||||||
|
fixed4 frag (v2f i) : COLOR
|
||||||
|
{
|
||||||
|
fixed4 col = i.color;
|
||||||
|
col.a *= tex2D(_MainTex, i.texcoord).a;
|
||||||
|
return col;
|
||||||
|
}
|
||||||
|
ENDCG
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
SubShader
|
||||||
|
{
|
||||||
|
Tags
|
||||||
|
{
|
||||||
|
"Queue"="Transparent"
|
||||||
|
"IgnoreProjector"="True"
|
||||||
|
"RenderType"="Transparent"
|
||||||
|
}
|
||||||
|
Lighting Off
|
||||||
|
Cull Off
|
||||||
|
ZTest Always
|
||||||
|
ZWrite Off
|
||||||
|
Fog { Mode Off }
|
||||||
|
Blend SrcAlpha OneMinusSrcAlpha
|
||||||
|
|
||||||
|
BindChannels
|
||||||
|
{
|
||||||
|
Bind "Color", color
|
||||||
|
Bind "Vertex", vertex
|
||||||
|
Bind "TexCoord", texcoord
|
||||||
|
}
|
||||||
|
|
||||||
|
Pass
|
||||||
|
{
|
||||||
|
SetTexture [_MainTex]
|
||||||
|
{
|
||||||
|
constantColor [_Color] combine constant * primary, constant * texture
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,106 @@
|
|||||||
|
Shader "Unlit/Masked Colored"
|
||||||
|
{
|
||||||
|
Properties
|
||||||
|
{
|
||||||
|
_MainTex ("Base (RGB) Mask (A)", 2D) = "white" {}
|
||||||
|
_Color ("Tint Color", Color) = (1,1,1,1)
|
||||||
|
}
|
||||||
|
|
||||||
|
SubShader
|
||||||
|
{
|
||||||
|
Tags
|
||||||
|
{
|
||||||
|
"Queue" = "Transparent"
|
||||||
|
"IgnoreProjector" = "True"
|
||||||
|
"RenderType" = "Transparent"
|
||||||
|
}
|
||||||
|
|
||||||
|
LOD 200
|
||||||
|
Cull Off
|
||||||
|
Lighting Off
|
||||||
|
ZWrite Off
|
||||||
|
Fog { Mode Off }
|
||||||
|
ColorMask RGB
|
||||||
|
Blend Off
|
||||||
|
|
||||||
|
Pass
|
||||||
|
{
|
||||||
|
CGPROGRAM
|
||||||
|
#pragma vertex vert
|
||||||
|
#pragma fragment frag
|
||||||
|
#pragma fragmentoption ARB_precision_hint_fastest
|
||||||
|
|
||||||
|
#include "UnityCG.cginc"
|
||||||
|
|
||||||
|
sampler2D _MainTex;
|
||||||
|
fixed4 _Color;
|
||||||
|
|
||||||
|
struct appdata_t
|
||||||
|
{
|
||||||
|
float4 vertex : POSITION;
|
||||||
|
fixed4 color : COLOR;
|
||||||
|
float2 texcoord : TEXCOORD0;
|
||||||
|
};
|
||||||
|
|
||||||
|
struct v2f
|
||||||
|
{
|
||||||
|
float4 vertex : POSITION;
|
||||||
|
fixed4 color : COLOR;
|
||||||
|
float2 texcoord : TEXCOORD0;
|
||||||
|
};
|
||||||
|
|
||||||
|
float4 _MainTex_ST;
|
||||||
|
|
||||||
|
v2f vert (appdata_t v)
|
||||||
|
{
|
||||||
|
v2f o;
|
||||||
|
o.vertex = mul(UNITY_MATRIX_MVP, v.vertex);
|
||||||
|
o.color = v.color;
|
||||||
|
o.texcoord = TRANSFORM_TEX(v.texcoord, _MainTex);
|
||||||
|
return o;
|
||||||
|
}
|
||||||
|
|
||||||
|
fixed4 frag (v2f i) : COLOR
|
||||||
|
{
|
||||||
|
half4 col = tex2D(_MainTex, i.texcoord) * i.color;
|
||||||
|
return half4( lerp(col.rgb, col.rgb * _Color.rgb, col.a), col.a );
|
||||||
|
}
|
||||||
|
ENDCG
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
SubShader
|
||||||
|
{
|
||||||
|
Tags
|
||||||
|
{
|
||||||
|
"Queue" = "Transparent"
|
||||||
|
"IgnoreProjector" = "True"
|
||||||
|
"RenderType" = "Transparent"
|
||||||
|
}
|
||||||
|
|
||||||
|
LOD 100
|
||||||
|
Cull Off
|
||||||
|
Lighting Off
|
||||||
|
ZWrite Off
|
||||||
|
Fog { Mode Off }
|
||||||
|
ColorMask RGB
|
||||||
|
AlphaTest Greater .01
|
||||||
|
Blend Off
|
||||||
|
|
||||||
|
Pass
|
||||||
|
{
|
||||||
|
ColorMaterial AmbientAndDiffuse
|
||||||
|
|
||||||
|
SetTexture [_MainTex]
|
||||||
|
{
|
||||||
|
Combine Texture * Primary
|
||||||
|
}
|
||||||
|
|
||||||
|
SetTexture [_MainTex]
|
||||||
|
{
|
||||||
|
ConstantColor [_Color]
|
||||||
|
Combine Previous * Constant
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,111 @@
|
|||||||
|
Shader "Unlit/Premultiplied Colored (AlphaClip)"
|
||||||
|
{
|
||||||
|
Properties
|
||||||
|
{
|
||||||
|
_MainTex ("Base (RGB), Alpha (A)", 2D) = "white" {}
|
||||||
|
}
|
||||||
|
|
||||||
|
SubShader
|
||||||
|
{
|
||||||
|
LOD 200
|
||||||
|
|
||||||
|
Tags
|
||||||
|
{
|
||||||
|
"Queue" = "Transparent"
|
||||||
|
"IgnoreProjector" = "True"
|
||||||
|
"RenderType" = "Transparent"
|
||||||
|
}
|
||||||
|
|
||||||
|
Pass
|
||||||
|
{
|
||||||
|
Cull Off
|
||||||
|
Lighting Off
|
||||||
|
ZWrite Off
|
||||||
|
AlphaTest Off
|
||||||
|
Fog { Mode Off }
|
||||||
|
Offset -1, -1
|
||||||
|
ColorMask RGB
|
||||||
|
Blend One OneMinusSrcAlpha
|
||||||
|
|
||||||
|
CGPROGRAM
|
||||||
|
#pragma vertex vert
|
||||||
|
#pragma fragment frag
|
||||||
|
#include "UnityCG.cginc"
|
||||||
|
|
||||||
|
sampler2D _MainTex;
|
||||||
|
float4 _MainTex_ST;
|
||||||
|
|
||||||
|
struct appdata_t
|
||||||
|
{
|
||||||
|
float4 vertex : POSITION;
|
||||||
|
half4 color : COLOR;
|
||||||
|
float2 texcoord : TEXCOORD0;
|
||||||
|
};
|
||||||
|
|
||||||
|
struct v2f
|
||||||
|
{
|
||||||
|
float4 vertex : POSITION;
|
||||||
|
half4 color : COLOR;
|
||||||
|
float2 texcoord : TEXCOORD0;
|
||||||
|
float2 worldPos : TEXCOORD1;
|
||||||
|
};
|
||||||
|
|
||||||
|
v2f vert (appdata_t v)
|
||||||
|
{
|
||||||
|
v2f o;
|
||||||
|
o.vertex = mul(UNITY_MATRIX_MVP, v.vertex);
|
||||||
|
o.color = v.color;
|
||||||
|
o.texcoord = v.texcoord;
|
||||||
|
o.worldPos = TRANSFORM_TEX(v.vertex.xy, _MainTex);
|
||||||
|
return o;
|
||||||
|
}
|
||||||
|
|
||||||
|
half4 frag (v2f IN) : COLOR
|
||||||
|
{
|
||||||
|
// Sample the texture
|
||||||
|
half4 col = tex2D(_MainTex, IN.texcoord) * IN.color;
|
||||||
|
|
||||||
|
float2 factor = abs(IN.worldPos);
|
||||||
|
float val = 1.0 - max(factor.x, factor.y);
|
||||||
|
|
||||||
|
// Option 1: 'if' statement
|
||||||
|
if (val < 0.0) col = half4(0.0, 0.0, 0.0, 0.0);
|
||||||
|
|
||||||
|
// Option 2: no 'if' statement -- may be faster on some devices
|
||||||
|
//col *= ceil(clamp(val, 0.0, 1.0));
|
||||||
|
return col;
|
||||||
|
}
|
||||||
|
ENDCG
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
SubShader
|
||||||
|
{
|
||||||
|
LOD 100
|
||||||
|
|
||||||
|
Tags
|
||||||
|
{
|
||||||
|
"Queue" = "Transparent"
|
||||||
|
"IgnoreProjector" = "True"
|
||||||
|
"RenderType" = "Transparent"
|
||||||
|
}
|
||||||
|
|
||||||
|
Pass
|
||||||
|
{
|
||||||
|
Cull Off
|
||||||
|
Lighting Off
|
||||||
|
ZWrite Off
|
||||||
|
AlphaTest Off
|
||||||
|
Fog { Mode Off }
|
||||||
|
Offset -1, -1
|
||||||
|
ColorMask RGB
|
||||||
|
Blend One OneMinusSrcAlpha
|
||||||
|
ColorMaterial AmbientAndDiffuse
|
||||||
|
|
||||||
|
SetTexture [_MainTex]
|
||||||
|
{
|
||||||
|
Combine Texture * Primary
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,109 @@
|
|||||||
|
Shader "Unlit/Premultiplied Colored (SoftClip)"
|
||||||
|
{
|
||||||
|
Properties
|
||||||
|
{
|
||||||
|
_MainTex ("Base (RGB), Alpha (A)", 2D) = "white" {}
|
||||||
|
}
|
||||||
|
|
||||||
|
SubShader
|
||||||
|
{
|
||||||
|
LOD 200
|
||||||
|
|
||||||
|
Tags
|
||||||
|
{
|
||||||
|
"Queue" = "Transparent"
|
||||||
|
"IgnoreProjector" = "True"
|
||||||
|
"RenderType" = "Transparent"
|
||||||
|
}
|
||||||
|
|
||||||
|
Pass
|
||||||
|
{
|
||||||
|
Cull Off
|
||||||
|
Lighting Off
|
||||||
|
ZWrite Off
|
||||||
|
AlphaTest Off
|
||||||
|
Fog { Mode Off }
|
||||||
|
Offset -1, -1
|
||||||
|
ColorMask RGB
|
||||||
|
Blend One OneMinusSrcAlpha
|
||||||
|
|
||||||
|
CGPROGRAM
|
||||||
|
#pragma vertex vert
|
||||||
|
#pragma fragment frag
|
||||||
|
#include "UnityCG.cginc"
|
||||||
|
|
||||||
|
sampler2D _MainTex;
|
||||||
|
float4 _MainTex_ST;
|
||||||
|
float2 _ClipSharpness = float2(20.0, 20.0);
|
||||||
|
|
||||||
|
struct appdata_t
|
||||||
|
{
|
||||||
|
float4 vertex : POSITION;
|
||||||
|
half4 color : COLOR;
|
||||||
|
float2 texcoord : TEXCOORD0;
|
||||||
|
};
|
||||||
|
|
||||||
|
struct v2f
|
||||||
|
{
|
||||||
|
float4 vertex : POSITION;
|
||||||
|
half4 color : COLOR;
|
||||||
|
float2 texcoord : TEXCOORD0;
|
||||||
|
float2 worldPos : TEXCOORD1;
|
||||||
|
};
|
||||||
|
|
||||||
|
v2f vert (appdata_t v)
|
||||||
|
{
|
||||||
|
v2f o;
|
||||||
|
o.vertex = mul(UNITY_MATRIX_MVP, v.vertex);
|
||||||
|
o.color = v.color;
|
||||||
|
o.texcoord = v.texcoord;
|
||||||
|
o.worldPos = TRANSFORM_TEX(v.vertex.xy, _MainTex);
|
||||||
|
return o;
|
||||||
|
}
|
||||||
|
|
||||||
|
half4 frag (v2f IN) : COLOR
|
||||||
|
{
|
||||||
|
// Softness factor
|
||||||
|
float2 factor = (float2(1.0, 1.0) - abs(IN.worldPos)) * _ClipSharpness;
|
||||||
|
|
||||||
|
// Sample the texture
|
||||||
|
half4 col = tex2D(_MainTex, IN.texcoord) * IN.color;
|
||||||
|
float fade = clamp( min(factor.x, factor.y), 0.0, 1.0);
|
||||||
|
col.a *= fade;
|
||||||
|
col.rgb = lerp(half3(0.0, 0.0, 0.0), col.rgb, fade);
|
||||||
|
return col;
|
||||||
|
}
|
||||||
|
ENDCG
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
SubShader
|
||||||
|
{
|
||||||
|
LOD 100
|
||||||
|
|
||||||
|
Tags
|
||||||
|
{
|
||||||
|
"Queue" = "Transparent"
|
||||||
|
"IgnoreProjector" = "True"
|
||||||
|
"RenderType" = "Transparent"
|
||||||
|
}
|
||||||
|
|
||||||
|
Pass
|
||||||
|
{
|
||||||
|
Cull Off
|
||||||
|
Lighting Off
|
||||||
|
ZWrite Off
|
||||||
|
AlphaTest Off
|
||||||
|
Fog { Mode Off }
|
||||||
|
Offset -1, -1
|
||||||
|
ColorMask RGB
|
||||||
|
Blend One OneMinusSrcAlpha
|
||||||
|
ColorMaterial AmbientAndDiffuse
|
||||||
|
|
||||||
|
SetTexture [_MainTex]
|
||||||
|
{
|
||||||
|
Combine Texture * Primary
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,100 @@
|
|||||||
|
Shader "Unlit/Premultiplied Colored"
|
||||||
|
{
|
||||||
|
Properties
|
||||||
|
{
|
||||||
|
_MainTex ("Base (RGB), Alpha (A)", 2D) = "white" {}
|
||||||
|
}
|
||||||
|
|
||||||
|
SubShader
|
||||||
|
{
|
||||||
|
LOD 200
|
||||||
|
|
||||||
|
Tags
|
||||||
|
{
|
||||||
|
"Queue" = "Transparent"
|
||||||
|
"IgnoreProjector" = "True"
|
||||||
|
"RenderType" = "Transparent"
|
||||||
|
}
|
||||||
|
|
||||||
|
Pass
|
||||||
|
{
|
||||||
|
Cull Off
|
||||||
|
Lighting Off
|
||||||
|
ZWrite Off
|
||||||
|
AlphaTest Off
|
||||||
|
Fog { Mode Off }
|
||||||
|
Offset -1, -1
|
||||||
|
ColorMask RGB
|
||||||
|
Blend One OneMinusSrcAlpha
|
||||||
|
|
||||||
|
CGPROGRAM
|
||||||
|
#pragma vertex vert
|
||||||
|
#pragma fragment frag
|
||||||
|
#include "UnityCG.cginc"
|
||||||
|
|
||||||
|
sampler2D _MainTex;
|
||||||
|
float4 _MainTex_ST;
|
||||||
|
|
||||||
|
struct appdata_t
|
||||||
|
{
|
||||||
|
float4 vertex : POSITION;
|
||||||
|
half4 color : COLOR;
|
||||||
|
float2 texcoord : TEXCOORD0;
|
||||||
|
};
|
||||||
|
|
||||||
|
struct v2f
|
||||||
|
{
|
||||||
|
float4 vertex : POSITION;
|
||||||
|
half4 color : COLOR;
|
||||||
|
float2 texcoord : TEXCOORD0;
|
||||||
|
};
|
||||||
|
|
||||||
|
v2f vert (appdata_t v)
|
||||||
|
{
|
||||||
|
v2f o;
|
||||||
|
o.vertex = mul(UNITY_MATRIX_MVP, v.vertex);
|
||||||
|
o.color = v.color;
|
||||||
|
o.texcoord = v.texcoord;
|
||||||
|
return o;
|
||||||
|
}
|
||||||
|
|
||||||
|
half4 frag (v2f IN) : COLOR
|
||||||
|
{
|
||||||
|
half4 col = tex2D(_MainTex, IN.texcoord) * IN.color;
|
||||||
|
//col.rgb = lerp(half3(0.0, 0.0, 0.0), col.rgb, col.a);
|
||||||
|
return col;
|
||||||
|
}
|
||||||
|
ENDCG
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
SubShader
|
||||||
|
{
|
||||||
|
LOD 100
|
||||||
|
|
||||||
|
Tags
|
||||||
|
{
|
||||||
|
"Queue" = "Transparent"
|
||||||
|
"IgnoreProjector" = "True"
|
||||||
|
"RenderType" = "Transparent"
|
||||||
|
}
|
||||||
|
|
||||||
|
Pass
|
||||||
|
{
|
||||||
|
Cull Off
|
||||||
|
Lighting Off
|
||||||
|
ZWrite Off
|
||||||
|
AlphaTest Off
|
||||||
|
Fog { Mode Off }
|
||||||
|
Offset -1, -1
|
||||||
|
ColorMask RGB
|
||||||
|
Blend One OneMinusSrcAlpha
|
||||||
|
ColorMaterial AmbientAndDiffuse
|
||||||
|
|
||||||
|
SetTexture [_MainTex]
|
||||||
|
{
|
||||||
|
Combine Texture * Primary
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,110 @@
|
|||||||
|
Shader "Unlit/Transparent Colored (AlphaClip)"
|
||||||
|
{
|
||||||
|
Properties
|
||||||
|
{
|
||||||
|
_MainTex ("Base (RGB), Alpha (A)", 2D) = "white" {}
|
||||||
|
}
|
||||||
|
|
||||||
|
SubShader
|
||||||
|
{
|
||||||
|
LOD 200
|
||||||
|
|
||||||
|
Tags
|
||||||
|
{
|
||||||
|
"Queue" = "Transparent"
|
||||||
|
"IgnoreProjector" = "True"
|
||||||
|
"RenderType" = "Transparent"
|
||||||
|
}
|
||||||
|
|
||||||
|
Pass
|
||||||
|
{
|
||||||
|
Cull Off
|
||||||
|
Lighting Off
|
||||||
|
ZWrite Off
|
||||||
|
Offset -1, -1
|
||||||
|
Fog { Mode Off }
|
||||||
|
ColorMask RGB
|
||||||
|
Blend SrcAlpha OneMinusSrcAlpha
|
||||||
|
|
||||||
|
CGPROGRAM
|
||||||
|
#pragma vertex vert
|
||||||
|
#pragma fragment frag
|
||||||
|
#include "UnityCG.cginc"
|
||||||
|
|
||||||
|
sampler2D _MainTex;
|
||||||
|
float4 _MainTex_ST;
|
||||||
|
|
||||||
|
struct appdata_t
|
||||||
|
{
|
||||||
|
float4 vertex : POSITION;
|
||||||
|
half4 color : COLOR;
|
||||||
|
float2 texcoord : TEXCOORD0;
|
||||||
|
};
|
||||||
|
|
||||||
|
struct v2f
|
||||||
|
{
|
||||||
|
float4 vertex : POSITION;
|
||||||
|
half4 color : COLOR;
|
||||||
|
float2 texcoord : TEXCOORD0;
|
||||||
|
float2 worldPos : TEXCOORD1;
|
||||||
|
};
|
||||||
|
|
||||||
|
v2f vert (appdata_t v)
|
||||||
|
{
|
||||||
|
v2f o;
|
||||||
|
o.vertex = mul(UNITY_MATRIX_MVP, v.vertex);
|
||||||
|
o.color = v.color;
|
||||||
|
o.texcoord = v.texcoord;
|
||||||
|
o.worldPos = TRANSFORM_TEX(v.vertex.xy, _MainTex);
|
||||||
|
return o;
|
||||||
|
}
|
||||||
|
|
||||||
|
half4 frag (v2f IN) : COLOR
|
||||||
|
{
|
||||||
|
// Sample the texture
|
||||||
|
half4 col = tex2D(_MainTex, IN.texcoord) * IN.color;
|
||||||
|
|
||||||
|
float2 factor = abs(IN.worldPos);
|
||||||
|
float val = 1.0 - max(factor.x, factor.y);
|
||||||
|
|
||||||
|
// Option 1: 'if' statement
|
||||||
|
if (val < 0.0) col.a = 0.0;
|
||||||
|
|
||||||
|
// Option 2: no 'if' statement -- may be faster on some devices
|
||||||
|
//col.a *= ceil(clamp(val, 0.0, 1.0));
|
||||||
|
|
||||||
|
return col;
|
||||||
|
}
|
||||||
|
ENDCG
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
SubShader
|
||||||
|
{
|
||||||
|
LOD 100
|
||||||
|
|
||||||
|
Tags
|
||||||
|
{
|
||||||
|
"Queue" = "Transparent"
|
||||||
|
"IgnoreProjector" = "True"
|
||||||
|
"RenderType" = "Transparent"
|
||||||
|
}
|
||||||
|
|
||||||
|
Pass
|
||||||
|
{
|
||||||
|
Cull Off
|
||||||
|
Lighting Off
|
||||||
|
ZWrite Off
|
||||||
|
Fog { Mode Off }
|
||||||
|
ColorMask RGB
|
||||||
|
AlphaTest Greater .01
|
||||||
|
Blend SrcAlpha OneMinusSrcAlpha
|
||||||
|
ColorMaterial AmbientAndDiffuse
|
||||||
|
|
||||||
|
SetTexture [_MainTex]
|
||||||
|
{
|
||||||
|
Combine Texture * Primary
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,80 @@
|
|||||||
|
Shader "Unlit/Transparent Colored (Packed) (AlphaClip)"
|
||||||
|
{
|
||||||
|
Properties
|
||||||
|
{
|
||||||
|
_MainTex ("Base (RGB), Alpha (A)", 2D) = "white" {}
|
||||||
|
}
|
||||||
|
|
||||||
|
SubShader
|
||||||
|
{
|
||||||
|
LOD 200
|
||||||
|
|
||||||
|
Tags
|
||||||
|
{
|
||||||
|
"Queue" = "Transparent"
|
||||||
|
"IgnoreProjector" = "True"
|
||||||
|
"RenderType" = "Transparent"
|
||||||
|
}
|
||||||
|
|
||||||
|
Pass
|
||||||
|
{
|
||||||
|
Cull Off
|
||||||
|
Lighting Off
|
||||||
|
ZWrite Off
|
||||||
|
Offset -1, -1
|
||||||
|
Fog { Mode Off }
|
||||||
|
ColorMask RGB
|
||||||
|
Blend SrcAlpha OneMinusSrcAlpha
|
||||||
|
|
||||||
|
CGPROGRAM
|
||||||
|
#pragma vertex vert
|
||||||
|
#pragma fragment frag
|
||||||
|
|
||||||
|
#include "UnityCG.cginc"
|
||||||
|
|
||||||
|
sampler2D _MainTex;
|
||||||
|
half4 _MainTex_ST;
|
||||||
|
|
||||||
|
struct appdata_t
|
||||||
|
{
|
||||||
|
float4 vertex : POSITION;
|
||||||
|
half4 color : COLOR;
|
||||||
|
float2 texcoord : TEXCOORD0;
|
||||||
|
};
|
||||||
|
|
||||||
|
struct v2f
|
||||||
|
{
|
||||||
|
float4 vertex : POSITION;
|
||||||
|
half4 color : COLOR;
|
||||||
|
float2 texcoord : TEXCOORD0;
|
||||||
|
float2 worldPos : TEXCOORD1;
|
||||||
|
};
|
||||||
|
|
||||||
|
v2f vert (appdata_t v)
|
||||||
|
{
|
||||||
|
v2f o;
|
||||||
|
o.vertex = mul(UNITY_MATRIX_MVP, v.vertex);
|
||||||
|
o.color = v.color;
|
||||||
|
o.texcoord = v.texcoord;
|
||||||
|
o.worldPos = TRANSFORM_TEX(v.vertex.xy, _MainTex);
|
||||||
|
return o;
|
||||||
|
}
|
||||||
|
|
||||||
|
half4 frag (v2f IN) : COLOR
|
||||||
|
{
|
||||||
|
half4 mask = tex2D(_MainTex, IN.texcoord);
|
||||||
|
half4 mixed = saturate(ceil(IN.color - 0.5));
|
||||||
|
half4 col = saturate((mixed * 0.51 - IN.color) / -0.49);
|
||||||
|
float2 factor = abs(IN.worldPos);
|
||||||
|
float val = 1.0 - max(factor.x, factor.y);
|
||||||
|
|
||||||
|
if (val < 0.0) col.a = 0.0;
|
||||||
|
mask *= mixed;
|
||||||
|
col.a *= mask.r + mask.g + mask.b + mask.a;
|
||||||
|
return col;
|
||||||
|
}
|
||||||
|
ENDCG
|
||||||
|
}
|
||||||
|
}
|
||||||
|
Fallback Off
|
||||||
|
}
|
||||||
@ -0,0 +1,80 @@
|
|||||||
|
Shader "Unlit/Transparent Colored (Packed) (SoftClip)"
|
||||||
|
{
|
||||||
|
Properties
|
||||||
|
{
|
||||||
|
_MainTex ("Base (RGB), Alpha (A)", 2D) = "white" {}
|
||||||
|
}
|
||||||
|
|
||||||
|
SubShader
|
||||||
|
{
|
||||||
|
LOD 200
|
||||||
|
|
||||||
|
Tags
|
||||||
|
{
|
||||||
|
"Queue" = "Transparent"
|
||||||
|
"IgnoreProjector" = "True"
|
||||||
|
"RenderType" = "Transparent"
|
||||||
|
}
|
||||||
|
|
||||||
|
Pass
|
||||||
|
{
|
||||||
|
Cull Off
|
||||||
|
Lighting Off
|
||||||
|
ZWrite Off
|
||||||
|
Offset -1, -1
|
||||||
|
Fog { Mode Off }
|
||||||
|
ColorMask RGB
|
||||||
|
Blend SrcAlpha OneMinusSrcAlpha
|
||||||
|
|
||||||
|
CGPROGRAM
|
||||||
|
#pragma vertex vert
|
||||||
|
#pragma fragment frag
|
||||||
|
|
||||||
|
#include "UnityCG.cginc"
|
||||||
|
|
||||||
|
sampler2D _MainTex;
|
||||||
|
half4 _MainTex_ST;
|
||||||
|
float2 _ClipSharpness = float2(20.0, 20.0);
|
||||||
|
|
||||||
|
struct appdata_t
|
||||||
|
{
|
||||||
|
float4 vertex : POSITION;
|
||||||
|
half4 color : COLOR;
|
||||||
|
float2 texcoord : TEXCOORD0;
|
||||||
|
};
|
||||||
|
|
||||||
|
struct v2f
|
||||||
|
{
|
||||||
|
float4 vertex : POSITION;
|
||||||
|
half4 color : COLOR;
|
||||||
|
float2 texcoord : TEXCOORD0;
|
||||||
|
float2 worldPos : TEXCOORD1;
|
||||||
|
};
|
||||||
|
|
||||||
|
v2f vert (appdata_t v)
|
||||||
|
{
|
||||||
|
v2f o;
|
||||||
|
o.vertex = mul(UNITY_MATRIX_MVP, v.vertex);
|
||||||
|
o.color = v.color;
|
||||||
|
o.texcoord = v.texcoord;
|
||||||
|
o.worldPos = TRANSFORM_TEX(v.vertex.xy, _MainTex);
|
||||||
|
return o;
|
||||||
|
}
|
||||||
|
|
||||||
|
half4 frag (v2f IN) : COLOR
|
||||||
|
{
|
||||||
|
half4 mask = tex2D(_MainTex, IN.texcoord);
|
||||||
|
half4 mixed = saturate(ceil(IN.color - 0.5));
|
||||||
|
half4 col = saturate((mixed * 0.51 - IN.color) / -0.49);
|
||||||
|
float2 factor = (float2(1.0, 1.0) - abs(IN.worldPos)) * _ClipSharpness;
|
||||||
|
|
||||||
|
mask *= mixed;
|
||||||
|
col.a *= clamp( min(factor.x, factor.y), 0.0, 1.0);
|
||||||
|
col.a *= mask.r + mask.g + mask.b + mask.a;
|
||||||
|
return col;
|
||||||
|
}
|
||||||
|
ENDCG
|
||||||
|
}
|
||||||
|
}
|
||||||
|
Fallback Off
|
||||||
|
}
|
||||||
@ -0,0 +1,75 @@
|
|||||||
|
Shader "Unlit/Transparent Colored (Packed)"
|
||||||
|
{
|
||||||
|
Properties
|
||||||
|
{
|
||||||
|
_MainTex ("Base (RGB), Alpha (A)", 2D) = "white" {}
|
||||||
|
}
|
||||||
|
|
||||||
|
SubShader
|
||||||
|
{
|
||||||
|
LOD 200
|
||||||
|
|
||||||
|
Tags
|
||||||
|
{
|
||||||
|
"Queue" = "Transparent"
|
||||||
|
"IgnoreProjector" = "True"
|
||||||
|
"RenderType" = "Transparent"
|
||||||
|
}
|
||||||
|
|
||||||
|
Pass
|
||||||
|
{
|
||||||
|
Cull Off
|
||||||
|
Lighting Off
|
||||||
|
ZWrite Off
|
||||||
|
Offset -1, -1
|
||||||
|
Fog { Mode Off }
|
||||||
|
ColorMask RGB
|
||||||
|
Blend SrcAlpha OneMinusSrcAlpha
|
||||||
|
|
||||||
|
CGPROGRAM
|
||||||
|
#pragma vertex vert
|
||||||
|
#pragma fragment frag
|
||||||
|
|
||||||
|
#include "UnityCG.cginc"
|
||||||
|
|
||||||
|
sampler2D _MainTex;
|
||||||
|
half4 _MainTex_ST;
|
||||||
|
|
||||||
|
struct appdata_t
|
||||||
|
{
|
||||||
|
float4 vertex : POSITION;
|
||||||
|
half4 color : COLOR;
|
||||||
|
float2 texcoord : TEXCOORD0;
|
||||||
|
};
|
||||||
|
|
||||||
|
struct v2f
|
||||||
|
{
|
||||||
|
float4 vertex : POSITION;
|
||||||
|
half4 color : COLOR;
|
||||||
|
float2 texcoord : TEXCOORD0;
|
||||||
|
};
|
||||||
|
|
||||||
|
v2f vert (appdata_t v)
|
||||||
|
{
|
||||||
|
v2f o;
|
||||||
|
o.vertex = mul(UNITY_MATRIX_MVP, v.vertex);
|
||||||
|
o.color = v.color;
|
||||||
|
o.texcoord = v.texcoord;
|
||||||
|
return o;
|
||||||
|
}
|
||||||
|
|
||||||
|
half4 frag (v2f IN) : COLOR
|
||||||
|
{
|
||||||
|
half4 mask = tex2D(_MainTex, IN.texcoord);
|
||||||
|
half4 mixed = saturate(ceil(IN.color - 0.5));
|
||||||
|
half4 col = saturate((mixed * 0.51 - IN.color) / -0.49);
|
||||||
|
|
||||||
|
mask *= mixed;
|
||||||
|
col.a *= mask.r + mask.g + mask.b + mask.a;
|
||||||
|
return col;
|
||||||
|
}
|
||||||
|
ENDCG
|
||||||
|
}
|
||||||
|
}
|
||||||
|
Fallback Off
|
||||||
|
}
|
||||||
@ -0,0 +1,107 @@
|
|||||||
|
Shader "Unlit/Transparent Colored (SoftClip)"
|
||||||
|
{
|
||||||
|
Properties
|
||||||
|
{
|
||||||
|
_MainTex ("Base (RGB), Alpha (A)", 2D) = "white" {}
|
||||||
|
}
|
||||||
|
|
||||||
|
SubShader
|
||||||
|
{
|
||||||
|
LOD 200
|
||||||
|
|
||||||
|
Tags
|
||||||
|
{
|
||||||
|
"Queue" = "Transparent"
|
||||||
|
"IgnoreProjector" = "True"
|
||||||
|
"RenderType" = "Transparent"
|
||||||
|
}
|
||||||
|
|
||||||
|
Pass
|
||||||
|
{
|
||||||
|
Cull Off
|
||||||
|
Lighting Off
|
||||||
|
ZWrite Off
|
||||||
|
Offset -1, -1
|
||||||
|
Fog { Mode Off }
|
||||||
|
ColorMask RGB
|
||||||
|
AlphaTest Greater .01
|
||||||
|
Blend SrcAlpha OneMinusSrcAlpha
|
||||||
|
|
||||||
|
CGPROGRAM
|
||||||
|
#pragma vertex vert
|
||||||
|
#pragma fragment frag
|
||||||
|
|
||||||
|
#include "UnityCG.cginc"
|
||||||
|
|
||||||
|
sampler2D _MainTex;
|
||||||
|
float4 _MainTex_ST;
|
||||||
|
float2 _ClipSharpness = float2(20.0, 20.0);
|
||||||
|
|
||||||
|
struct appdata_t
|
||||||
|
{
|
||||||
|
float4 vertex : POSITION;
|
||||||
|
half4 color : COLOR;
|
||||||
|
float2 texcoord : TEXCOORD0;
|
||||||
|
};
|
||||||
|
|
||||||
|
struct v2f
|
||||||
|
{
|
||||||
|
float4 vertex : POSITION;
|
||||||
|
half4 color : COLOR;
|
||||||
|
float2 texcoord : TEXCOORD0;
|
||||||
|
float2 worldPos : TEXCOORD1;
|
||||||
|
};
|
||||||
|
|
||||||
|
v2f vert (appdata_t v)
|
||||||
|
{
|
||||||
|
v2f o;
|
||||||
|
o.vertex = mul(UNITY_MATRIX_MVP, v.vertex);
|
||||||
|
o.color = v.color;
|
||||||
|
o.texcoord = v.texcoord;
|
||||||
|
o.worldPos = TRANSFORM_TEX(v.vertex.xy, _MainTex);
|
||||||
|
return o;
|
||||||
|
}
|
||||||
|
|
||||||
|
half4 frag (v2f IN) : COLOR
|
||||||
|
{
|
||||||
|
// Softness factor
|
||||||
|
float2 factor = (float2(1.0, 1.0) - abs(IN.worldPos)) * _ClipSharpness;
|
||||||
|
|
||||||
|
// Sample the texture
|
||||||
|
half4 col = tex2D(_MainTex, IN.texcoord) * IN.color;
|
||||||
|
col.a *= clamp( min(factor.x, factor.y), 0.0, 1.0);
|
||||||
|
return col;
|
||||||
|
}
|
||||||
|
ENDCG
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
SubShader
|
||||||
|
{
|
||||||
|
LOD 100
|
||||||
|
|
||||||
|
Tags
|
||||||
|
{
|
||||||
|
"Queue" = "Transparent"
|
||||||
|
"IgnoreProjector" = "True"
|
||||||
|
"RenderType" = "Transparent"
|
||||||
|
}
|
||||||
|
|
||||||
|
Pass
|
||||||
|
{
|
||||||
|
Cull Off
|
||||||
|
Lighting Off
|
||||||
|
ZWrite Off
|
||||||
|
Fog { Mode Off }
|
||||||
|
ColorMask RGB
|
||||||
|
AlphaTest Greater .01
|
||||||
|
Blend SrcAlpha OneMinusSrcAlpha
|
||||||
|
ColorMaterial AmbientAndDiffuse
|
||||||
|
|
||||||
|
SetTexture [_MainTex]
|
||||||
|
{
|
||||||
|
Combine Texture * Primary
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,68 @@
|
|||||||
|
Shader "Unlit/Transparent Colored"
|
||||||
|
{
|
||||||
|
Properties
|
||||||
|
{
|
||||||
|
_MainTex ("Base (RGB), Alpha (A)", 2D) = "white" {}
|
||||||
|
}
|
||||||
|
|
||||||
|
SubShader
|
||||||
|
{
|
||||||
|
LOD 100
|
||||||
|
|
||||||
|
Tags
|
||||||
|
{
|
||||||
|
"Queue" = "Transparent"
|
||||||
|
"IgnoreProjector" = "True"
|
||||||
|
"RenderType" = "Transparent"
|
||||||
|
}
|
||||||
|
|
||||||
|
Cull Off
|
||||||
|
Lighting Off
|
||||||
|
ZWrite Off
|
||||||
|
Fog { Mode Off }
|
||||||
|
Offset -1, -1
|
||||||
|
Blend SrcAlpha OneMinusSrcAlpha
|
||||||
|
|
||||||
|
Pass
|
||||||
|
{
|
||||||
|
CGPROGRAM
|
||||||
|
#pragma vertex vert
|
||||||
|
#pragma fragment frag
|
||||||
|
|
||||||
|
#include "UnityCG.cginc"
|
||||||
|
|
||||||
|
struct appdata_t
|
||||||
|
{
|
||||||
|
float4 vertex : POSITION;
|
||||||
|
float2 texcoord : TEXCOORD0;
|
||||||
|
fixed4 color : COLOR;
|
||||||
|
};
|
||||||
|
|
||||||
|
struct v2f
|
||||||
|
{
|
||||||
|
float4 vertex : SV_POSITION;
|
||||||
|
half2 texcoord : TEXCOORD0;
|
||||||
|
fixed4 color : COLOR;
|
||||||
|
};
|
||||||
|
|
||||||
|
sampler2D _MainTex;
|
||||||
|
float4 _MainTex_ST;
|
||||||
|
|
||||||
|
v2f vert (appdata_t v)
|
||||||
|
{
|
||||||
|
v2f o;
|
||||||
|
o.vertex = mul(UNITY_MATRIX_MVP, v.vertex);
|
||||||
|
o.texcoord = TRANSFORM_TEX(v.texcoord, _MainTex);
|
||||||
|
o.color = v.color;
|
||||||
|
return o;
|
||||||
|
}
|
||||||
|
|
||||||
|
fixed4 frag (v2f i) : COLOR
|
||||||
|
{
|
||||||
|
fixed4 col = tex2D(_MainTex, i.texcoord) * i.color;
|
||||||
|
return col;
|
||||||
|
}
|
||||||
|
ENDCG
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
Binary file not shown.
Binary file not shown.
@ -1,19 +1,24 @@
|
|||||||
<Properties>
|
<Properties>
|
||||||
<MonoDevelop.Ide.Workspace ActiveConfiguration="Debug" PreferredExecutionTarget="MonoDevelop.Default" />
|
<MonoDevelop.Ide.Workspace ActiveConfiguration="Debug" />
|
||||||
<MonoDevelop.Ide.Workbench ActiveDocument="Assets\Scripts\Assembly-CSharp\ImageObject.cs">
|
<MonoDevelop.Ide.Workbench ActiveDocument="Assets\Scripts\Assembly-CSharp\UnityFile.cs">
|
||||||
<Files>
|
<Files>
|
||||||
<File FileName="Assets\Scripts\Assembly-CSharp\SceneManager.cs" Line="1" Column="1" />
|
<File FileName="Assets\Scripts\Assembly-CSharp\UnityFile.cs" Line="191" Column="27" />
|
||||||
<File FileName="Assets\Scripts\Assembly-CSharp\CreateSprite.cs" Line="1" Column="1" />
|
<File FileName="Assets\Scripts\Assembly-CSharp\UnityFileLoader.cs" Line="61" Column="22" />
|
||||||
|
<File FileName="Assets\Scripts\Assembly-CSharp\TitleWindow.cs" Line="1" Column="1" />
|
||||||
<File FileName="Assets\Scripts\Assembly-CSharp\BaseWindow.cs" Line="1" Column="1" />
|
<File FileName="Assets\Scripts\Assembly-CSharp\BaseWindow.cs" Line="1" Column="1" />
|
||||||
<File FileName="Assets\Scripts\Assembly-CSharp\AdventureMenuWindow.cs" Line="1" Column="1" />
|
<File FileName="Assets\Scripts\Assembly-CSharp\GraphicManager.cs" Line="1" Column="1" />
|
||||||
<File FileName="Assets\Scripts\Assembly-CSharp\ImageObject.cs" Line="194" Column="55" />
|
<File FileName="Assets\Scripts\Assembly-CSharp\Pathing.cs" Line="1" Column="1" />
|
||||||
<File FileName="Assets\Scripts\Assembly-CSharp\UnitySprite.cs" Line="1" Column="1" />
|
<File FileName="Assets\Scripts\Assembly-CSharp\EffectManager.cs" Line="1" Column="1" />
|
||||||
<File FileName="Assets\Scripts\Assembly-CSharp\UIActionButton.cs" Line="1" Column="1" />
|
|
||||||
<File FileName="Assets\Scripts\Assembly-CSharp\Qoo\Input\KsInput.cs" Line="1" Column="1" />
|
|
||||||
</Files>
|
</Files>
|
||||||
</MonoDevelop.Ide.Workbench>
|
</MonoDevelop.Ide.Workbench>
|
||||||
<MonoDevelop.Ide.DebuggingService.Breakpoints>
|
<MonoDevelop.Ide.DebuggingService.Breakpoints>
|
||||||
<BreakpointStore />
|
<BreakpointStore>
|
||||||
|
<Breakpoint enabled="false" file="C:\Users\lovel\Documents\unityshinsoubanalice\Assets\Scripts\Assembly-CSharp\MsgWnd.cs" line="316" />
|
||||||
|
<Breakpoint enabled="false" file="C:\Users\lovel\Documents\unityshinsoubanalice\Assets\Scripts\Assembly-CSharp\Qoo\Ks\KsScene.cs" line="846" />
|
||||||
|
<Breakpoint enabled="false" file="C:\Users\lovel\Documents\unityshinsoubanalice\Assets\Scripts\Assembly-CSharp\Qoo\Ks\KsTagInfo_PRINT.cs" line="30" />
|
||||||
|
<Breakpoint file="C:\Users\lovel\Documents\unityshinsoubanalice\Assets\Scripts\Assembly-CSharp\Pathing.cs" line="55" />
|
||||||
|
<Breakpoint file="C:\Users\lovel\Documents\unityshinsoubanalice\Assets\Scripts\Assembly-CSharp\UnityFile.cs" line="192" />
|
||||||
|
</BreakpointStore>
|
||||||
</MonoDevelop.Ide.DebuggingService.Breakpoints>
|
</MonoDevelop.Ide.DebuggingService.Breakpoints>
|
||||||
<MonoDevelop.Ide.DebuggingService.PinnedWatches />
|
<MonoDevelop.Ide.DebuggingService.PinnedWatches />
|
||||||
</Properties>
|
</Properties>
|
||||||
Loading…
Reference in New Issue