fragment_program Ogre/Compositor/Invert_Cg_FP cg { source InvertFP.cg entry_point Invert_ps profiles ps_4_0 ps_2_0 arbfp1 } fragment_program Ogre/Compositor/Invert_GLSLES_FP glsles { source InvertFP.glsles } fragment_program Ogre/Compositor/Invert_GLSL_FP glsl { source InvertFP.glsl syntax glsl150 } fragment_program Ogre/Compositor/InvertFP unified { delegate Ogre/Compositor/Invert_GLSL_FP delegate Ogre/Compositor/Invert_GLSLES_FP delegate Ogre/Compositor/Invert_Cg_FP } material Ogre/Compositor/Invert { technique { pass { cull_hardware none cull_software none depth_func always_pass polygon_mode_overrideable false vertex_program_ref Ogre/Compositor/StdQuad_Tex2a_vp { } fragment_program_ref Ogre/Compositor/InvertFP { } texture_unit RT { tex_coord_set 0 tex_address_mode clamp filtering trilinear } } } }