// Template materials for integrated depth shadows material SO3/PSSM/NULL { technique { pass { lighting off depth_check off depth_write off colour_write off vertex_program_ref SO3/PSSM/ShadowCasterVP { } fragment_program_ref SO3/PSSM/ShadowCasterFP { } } } } material SO3/PSSM/ShadowCaster { technique { pass { vertex_program_ref SO3/PSSM/ShadowCasterVP { } fragment_program_ref SO3/PSSM/ShadowCasterFP { } } } } material SO3/PSSM/ShadowCaster/Alpha { technique { pass { vertex_program_ref SO3/PSSM/ShadowCasterVP { } fragment_program_ref SO3/PSSM/ShadowCasterFP/Alpha { } } } } material SO3/PSSM/ShadowReceiver { technique { pass { separate_scene_blend modulate add vertex_program_ref SO3/PSSM/ShadowReceiverVP { } fragment_program_ref SO3/PSSM/ShadowReceiverFP { // you must specify pssmSplitPoints when you instantiate! } texture_unit SO3/shadows/PSSM/0 { content_type shadow tex_address_mode border tex_border_colour 0.0 0.0 0.0 0.0 filtering none } texture_unit SO3/shadows/PSSM/1 { content_type shadow tex_address_mode border tex_border_colour 0.0 0.0 0.0 0.0 filtering none } texture_unit SO3/shadows/PSSM/2 { content_type shadow tex_address_mode border tex_border_colour 0.0 0.0 0.0 0.0 filtering none } texture_unit diffuse { // nothing specified for now, derivers can override } } } } material SO3/PSSM/ShadowReceiver/basic { technique { pass { separate_scene_blend modulate add vertex_program_ref SO3/PSSM/ShadowReceiverVP { } fragment_program_ref SO3/PSSM/ShadowReceiverFP/basic { // you must specify pssmSplitPoints when you instantiate! } texture_unit SO3/shadows/PSSM/0 { content_type shadow tex_address_mode border tex_border_colour 0.0 0.0 0.0 0.0 filtering none } texture_unit SO3/shadows/PSSM/1 { content_type shadow tex_address_mode border tex_border_colour 0.0 0.0 0.0 0.0 filtering none } texture_unit SO3/shadows/PSSM/2 { content_type shadow tex_address_mode border tex_border_colour 0.0 0.0 0.0 0.0 filtering none } } } } material SO3/PSSM/ShadowReceiver2 { technique { pass { separate_scene_blend modulate add vertex_program_ref SO3/PSSM/ShadowReceiver2VP { } fragment_program_ref SO3/PSSM/ShadowReceiver2FP { // you must specify pssmSplitPoints when you instantiate! } texture_unit SO3/shadows/PSSM/0 { content_type shadow tex_address_mode border tex_border_colour 0.0 0.0 0.0 0.0 filtering none } texture_unit SO3/shadows/PSSM/1 { content_type shadow tex_address_mode border tex_border_colour 0.0 0.0 0.0 0.0 filtering none } texture_unit diffuse { // nothing specified for now, derivers can override } } } } material SO3/PSSM/ShadowReceiver2/basic { technique { pass { separate_scene_blend modulate add vertex_program_ref SO3/PSSM/ShadowReceiver2VP { } fragment_program_ref SO3/PSSM/ShadowReceiver2FP/basic { // you must specify pssmSplitPoints when you instantiate! } texture_unit SO3/shadows/PSSM/0 { content_type shadow tex_address_mode border tex_border_colour 0.0 0.0 0.0 0.0 filtering none } texture_unit SO3/shadows/PSSM/1 { content_type shadow tex_address_mode border tex_border_colour 0.0 0.0 0.0 0.0 filtering none } } } }