2023-05-08 15:56:10 +03:00

59 lines
1.3 KiB
Plaintext

// clang-format off
Shader "Unlit/OverwriteAlpha"
{
Properties
{
_Alpha("Alpha", Range (0.0, 1.0)) = 0.0
}
SubShader
{
Tags { "RenderType"="Opaque" }
LOD 100
Cull Off
ZTest Always
ZWrite Off
// we want to keep the color buffer as is, but override the alpha
Blend Zero One, One Zero
Pass
{
CGPROGRAM
#pragma vertex vert
#pragma fragment frag
// make fog work
#pragma multi_compile_fog
#include "UnityCG.cginc"
struct appdata
{
float4 vertex : POSITION;
};
struct v2f
{
UNITY_FOG_COORDS(1)
float4 vertex : SV_POSITION;
};
v2f vert (appdata v)
{
v2f o;
o.vertex = UnityObjectToClipPos(v.vertex);
// Push the z to the far plane
//o.vertex.z = 1.0 - UNITY_NEAR_CLIP_VALUE;
return o;
}
float _Alpha;
fixed4 frag (v2f i) : SV_Target
{
// apply fog
return float4(0,0,0, _Alpha);
}
ENDCG
}
}
}