material GTP/Particles/SpriteShader { technique { pass { cull_hardware none depth_check off scene_blend add depth_write off vertex_program_ref GTP/Particles/SpriteVS { param_named_auto worldView worldview_matrix param_named_auto Proj projection_matrix } fragment_program_ref GTP/Particles/SpritePS { } texture_unit { texture flare.png } } } } material GTP/SBB/Basic { technique { pass { IllumTechniques { RenderTechnique SphericalBillboard { texture_unit_id 1 } } scene_blend src_alpha one //scene_blend src_alpha one_minus_src_alpha depth_write off depth_check off vertex_program_ref GTP/Particles/SB_Sprite_VS { param_named_auto worldView worldview_matrix param_named_auto Proj projection_matrix param_named_auto width viewport_width param_named_auto height viewport_height } fragment_program_ref GTP/Particles/SB_Sprite_PS { param_named_auto farplane far_clip_distance param_named_auto nearplane near_clip_distance // param_named color float4 1 1 1 0.025 param_named color float4 1 1 1 0.05 } texture_unit { //anim_texture smokealpha.tga 32 2.0 texture flare.png } //scene depth texture texture_unit { filtering none } texture_unit { texture planck1D.tga } } } } material GTP/SBB/Illum { technique { pass { IllumTechniques { RenderTechnique SphericalBillboard { texture_unit_id 1 } RenderTechnique IllumVolume { material GTP/HPS/Smoke_IllumVolume update_interval 1 texture_unit_id 2 resolution 128 lightmatrix_param_name lightViewProj } } //scene_blend src_alpha one scene_blend src_alpha one_minus_src_alpha depth_write off depth_check off vertex_program_ref GTP/Particles/SBB_Illum_VS { param_named_auto worldView worldview_matrix param_named_auto worldViewInv inverse_worldview_matrix param_named_auto Proj projection_matrix param_named_auto width viewport_width param_named_auto height viewport_height } fragment_program_ref GTP/Particles/SBB_Illum_PS { param_named_auto farplane far_clip_distance param_named_auto nearplane near_clip_distance param_named color float4 1 1 1 0.1 } texture_unit { anim_texture smokealpha.tga 32 2.0 //texture flare.png } //scene depth texture texture_unit { filtering none } texture_unit { } } } } material GTP/HPS/Smoke_S { technique { pass { depth_check off scene_blend_op max scene_blend_op_alpha add scene_blend_alpha one one_minus_src_alpha vertex_program_ref GTP/HPS/Small_VS { param_named_auto worldView worldview_matrix param_named_auto Proj projection_matrix } fragment_program_ref GTP/HPS/Small_PS { param_named_auto Proj projection_matrix } texture_unit { texture smoke2.jpg } } } } material GTP/HPS/Smoke_L { technique { pass { IllumTechniques { RenderTechnique HPS { particle_script GTP/HPS/Smoke_Little perspective false vparam_radius baseRadius } } depth_check off scene_blend alpha_blend vertex_program_ref GTP/HPS/Large_VS { param_named_auto worldView worldview_matrix param_named_auto Proj projection_matrix } fragment_program_ref GTP/HPS/Large_PS { } //impostor texture texture_unit { } } } } material GTP/HPS/Smoke_L_Depth { technique { pass { IllumTechniques { RenderTechnique HPS { particle_script GTP/HPS/Smoke_Little perspective false vparam_radius baseRadius update_interval 1 } RenderTechnique SphericalBillboard { texture_unit_id 1 } } depth_check off depth_write off scene_blend alpha_blend vertex_program_ref GTP/HPS/Large_Depth_VS { param_named_auto worldView worldview_matrix param_named_auto Proj projection_matrix } fragment_program_ref GTP/HPS/Large_Depth_PS { param_named_auto farplane far_clip_distance param_named_auto nearplane near_clip_distance param_named color float4 1 1 1 0.5 } //impostor texture texture_unit { //filtering none } //scene depth texture texture_unit { filtering none } } } } material GTP/HPS/Smoke_L_Depth_Illum { technique { pass { IllumTechniques { RenderTechnique HPS { particle_script GTP/HPS/Smoke_Little perspective false vparam_radius baseRadius update_interval 1 } RenderTechnique SphericalBillboard { texture_unit_id 1 } RenderTechnique IllumVolume { material GTP/HPS/Smoke_IllumVolume update_interval 1 texture_unit_id 2 resolution 128 lightmatrix_param_name lightViewProj } } depth_check off depth_write off scene_blend alpha_blend vertex_program_ref GTP/HPS/Large_Depth_Illum_VS { param_named_auto worldView worldview_matrix param_named_auto worldViewInv inverse_worldview_matrix param_named_auto Proj projection_matrix param_named_auto width viewport_width param_named_auto height viewport_height param_named baseRadius float 1 } fragment_program_ref GTP/HPS/Large_Depth_Illum_PS { // param_named_auto farplane far_clip_distance // param_named_auto nearplane near_clip_distance } //impostor texture texture_unit { //filtering none } //scene depth texture texture_unit { filtering none } //Ilumination volume texture_unit { //filtering none } } } } material GTP/HPS/Smoke_IllumVolume { technique { pass { cull_hardware none cull_software none lighting off scene_blend zero one_minus_src_colour depth_write off vertex_program_ref GTP/HPS/IllumVolume_VS { param_named_auto worldView worldview_matrix param_named_auto Proj projection_matrix } fragment_program_ref GTP/HPS/IllumVolume_PS { //param_named density float 0.05 //param_named density float 0.5 param_named density float 1 } texture_unit { texture pamacs.dds } } } } material GTP/Particles/BlurLightVolume { technique { pass { depth_check off cull_hardware none scene_blend alpha_blend vertex_program_ref GTP/Basic/FSQuad_VS { } fragment_program_ref GTP/Basic/FSQuadCopy_PS { param_named_auto width viewport_width param_named_auto height viewport_height //param_named alpha float 1 param_named alpha float 0.05 } texture_unit { filtering bilinear } } } }