[Unity5]how to change alpha by using shader.

I’m struggle to make fog of war watching this video.

but I get stuck in some problem. Fog's alpha don't change!

Shader “Custom/FogOfWarMasking” {

Properties {
	_Color("Main Color", Color) = (1,1,1,1)
	_MainTex ("Base (RGB)", 2D) = "white" {}
}
SubShader {
	Tags { "Queue"="Transparent" "RenderType"="Transparent" "LightMode"="ForwardBase"}
	Blend SrcAlpha OneMinusSrcAlpha
	Lighting off
	LOD 200
	
	CGPROGRAM
	#pragma surface surf NoLighting noambient

	fixed4 LightingNoLighting(SurfaceOutput s, fixed3 lightDir, float aten)
	{
		fixed4 color;
		color.rgb = s.Albedo;
		color.a = s.Alpha;
		
		return color;
	}
	fixed4 _Color;
	sampler2D _MainTex;

	struct Input {
		float2 uv_MainTex;
	};

	void surf (Input IN, inout SurfaceOutput o) {
		half4 baseColor = tex2D (_MainTex, IN.uv_MainTex);
		
		o.Albedo = _Color.rgb * baseColor.b;
		o.Alpha = _Color.a - baseColor.g; //green - color of aperture mask
	}
	ENDCG
} 

Fallback "Diffuse"

}

Everything is ok except transparent…

What was worse, set o.Alpha specific value like 0.0f, 0.5f, It doesn’t work either. :frowning:

This tutorial worked well in Unity4.x, Unity5.x not. but I don’t know why alpha was not changed.

To sum up, how to change alpha to make transparent shader in Unity5?

I found answer myself.

#pragma surface surf NoLighting noambient **alpha:blend**

it’s worked well in unity5