vertex_program Ogre/Compositor/StdQuad_Cg_vp cg
{
	source StdQuad_vp.cg
	entry_point StdQuad_vp
    profiles vs_4_0 vs_4_0_level_9_1 vs_4_0_level_9_3 vs_2_0 vs_1_1 arbvp1

	default_params
	{
		param_named_auto worldViewProj worldviewproj_matrix
	}
}

vertex_program Ogre/Compositor/StdQuad_Tex2a_Cg_vp cg
{
	source StdQuad_vp.cg
	entry_point StdQuad_Tex2a_vp
	profiles vs_4_0 vs_4_0_level_9_1 vs_4_0_level_9_3 vs_2_0 vs_1_1 arbvp1

	default_params
	{
		param_named_auto worldViewProj worldviewproj_matrix
	}
}

vertex_program Ogre/Compositor/StdQuad_GLSL_vp glsl glsles
{
	source StdQuad_vp.glsl
    default_params
    {
        param_named_auto worldViewProj worldviewproj_matrix
    }
}

vertex_program Ogre/Compositor/StdQuad_Tex2_vp glsl glsles glslang hlsl
{
	source StdQuad_Tex2_vp.glsl
	default_params
	{
		param_named_auto worldViewProj worldviewproj_matrix
	}
}

vertex_program Ogre/Compositor/StdQuad_Tex2a_GLSL_vp glsl glsles
{
	source StdQuad_Tex2a_vp.glsl
	default_params
	{
		param_named_auto worldViewProj worldviewproj_matrix
	}
}

vertex_program Ogre/Compositor/StdQuad_HLSL_vp hlsl
{
	source StdQuad_vp.cg
	entry_point StdQuad_vp
	target vs_1_1 vs_2_0

	default_params
	{
		param_named_auto worldViewProj worldviewproj_matrix
	}
}

vertex_program Ogre/Compositor/StdQuad_Tex2a_HLSL_vp hlsl
{
	source StdQuad_vp.cg
	entry_point StdQuad_Tex2a_vp
	target vs_1_1 vs_2_0

	default_params
	{
		param_named_auto worldViewProj worldviewproj_matrix
	}
}

// Unified definitions
// use StdQuad_Tex2_vp whhen verified with SM4 (i.e. correct POSITION location)
vertex_program Ogre/Compositor/StdQuad_vp unified
{
	delegate Ogre/Compositor/StdQuad_HLSL_vp
	delegate Ogre/Compositor/StdQuad_GLSL_vp
	delegate Ogre/Compositor/StdQuad_Cg_vp
}

vertex_program Ogre/Compositor/StdQuad_Tex2a_vp unified
{
	delegate Ogre/Compositor/StdQuad_Tex2a_GLSL_vp
	delegate Ogre/Compositor/StdQuad_Tex2a_HLSL_vp
	delegate Ogre/Compositor/StdQuad_Tex2a_Cg_vp
}