fragment_program Ogre/Compositor/OldTV_FPCg cg
{
	source OldTV.cg
	entry_point OldTV_ps
	profiles ps_4_0 ps_2_0 arbfp1
}

fragment_program Ogre/Compositor/OldTV_FPGLSL glsl
{
	source OldTV.glsl
	syntax glsl150
    default_params
	{
   		param_named Image int 0
   		param_named Rand int 1
   		param_named Noise int 2
	}
}

fragment_program Ogre/Compositor/OldTV_FPGLSLES glsles
{
	source OldTV.glsles
	syntax glsles
    default_params
	{
   		param_named Image int 0
   		param_named Rand int 1
   		param_named Noise int 2
	}
}

fragment_program Ogre/Compositor/OldTV_FPHLSL hlsl
{
	source OldTV.hlsl
	entry_point OldTV_ps
	target ps_4_0
}

fragment_program Ogre/Compositor/OldTV_FP unified
{
	delegate Ogre/Compositor/OldTV_FPGLSL
	delegate Ogre/Compositor/OldTV_FPGLSLES
	delegate Ogre/Compositor/OldTV_FPHLSL
	delegate Ogre/Compositor/OldTV_FPCg
}

material Ogre/Compositor/OldTV
{
	technique
	{

		pass
		{
			depth_check off
            polygon_mode_overrideable false

			vertex_program_ref Ogre/Compositor/StdQuad_Tex2a_vp
			{
			}

			fragment_program_ref Ogre/Compositor/OldTV_FP
			{
                param_named distortionFreq float 2.7
                param_named distortionScale float 2.5
                param_named distortionRoll float 0.93
                param_named interference float 0.5
                param_named frameLimit float 0.40
                param_named frameShape float 0.26
                param_named frameSharpness float 6.0
				
                param_named_auto time_0_X time_0_x 120
                param_named_auto sin_time_0_X sintime_0_x 120				
			}

			texture_unit 0
			{
                tex_coord_set 0
				tex_address_mode clamp
				filtering linear linear linear
			}

			texture_unit 1
			{
				texture Random3D.dds 3d
                tex_coord_set 1
				tex_address_mode wrap
				filtering linear linear linear
			}

			texture_unit 2
			{
				texture NoiseVolume.dds 3d
                tex_coord_set 2
				tex_address_mode wrap
				filtering linear linear linear
			}
		}
	}
}
