
float checkpointAlpha = 0.5f;

//Pixel Shader
float4 ps_checkpoint(VS_OUTPUT IN) : COLOR0
{
	float4 color = tex2D(DiffuseSampler, IN.tex0);
	color.a *= checkpointAlpha;
	return color;
}

//Lighting Technique
technique Checkpoint_2_0
{
	pass P0
	{        
		Lighting = false;
		ZWriteEnable = true;
		CullMode = None;
		AlphaBlendEnable = true;
		SrcBlend = SrcAlpha;
		DestBlend = InvSrcAlpha;
		VertexShader = compile vs_2_0 vs_lighting();
		PixelShader  = compile ps_2_0 ps_checkpoint();
	}
}

technique Checkpoint_1_1
{
	pass P0
	{        
		Lighting = false;	
		ZWriteEnable = true;	
		CullMode = None;
		AlphaBlendEnable = true;
		SrcBlend = SrcAlpha;
		DestBlend = InvSrcAlpha;
		VertexShader = compile vs_1_1 vs_lighting();
		PixelShader  = compile ps_1_1 ps_checkpoint();
	}
}

technique Checkpoint_FFP
{
	pass P0
	{        
		Lighting = false;
		ZWriteEnable = true;
		CullMode = None;
		AlphaBlendEnable = true;
		SrcBlend = SrcAlpha;
		DestBlend = InvSrcAlpha;
		WorldTransform[0] = <matW>;
		ViewTransform = <matV>;
		ProjectionTransform = <matP>;
		Texture[0] = <texDiffuse>;
	}
}