vertex_program HPS_Smoke_S_VS hlsl { source GameTools_HPS_Smoke_S.hlsl entry_point HPS_Smoke_S_VS target vs_3_0 } fragment_program HPS_Smoke_S_PS hlsl { source GameTools_HPS_Smoke_S.hlsl entry_point HPS_Smoke_S_PS target ps_3_0 } material HPS_SMOKE_S { technique { pass { vertex_program_ref HPS_Smoke_S_VS { param_named_auto worldViewProj worldviewproj_matrix param_named_auto worldView worldview_matrix param_named_auto Proj projection_matrix } fragment_program_ref HPS_Smoke_S_PS { param_named_auto Proj projection_matrix } texture_unit { texture pamacs.dds } depth_check off scene_blend_op max scene_blend_op_alpha add scene_blend_alpha one one_minus_src_alpha } } } vertex_program HPS_Smoke_L_VS hlsl { source GameTools_HPS_Smoke_L.hlsl entry_point HPS_Smoke_L_VS target vs_3_0 } fragment_program HPS_Smoke_L_PS hlsl { source GameTools_HPS_Smoke_L.hlsl entry_point HPS_Smoke_L_PS target ps_3_0 } material HPS_SMOKE_L { technique { pass { IllumTechniques { RenderTechnique HPS { particle_script GameTools/Little perspective false vparam_radius baseRadius } } vertex_program_ref HPS_Smoke_L_VS { param_named_auto worldViewProj worldviewproj_matrix param_named_auto worldView worldview_matrix param_named_auto Proj projection_matrix } fragment_program_ref HPS_Smoke_L_PS { param_named_auto Proj projection_matrix } depth_check off scene_blend alpha_blend //impostor texture texture_unit { } } } } vertex_program HPS_Smoke_L_Depth_VS hlsl { source GameTools_HPS_Smoke_L_Depth.hlsl entry_point HPS_Smoke_L_Depth_Illum_VS target vs_3_0 } fragment_program HPS_Smoke_L_Depth_PS hlsl { source GameTools_HPS_Smoke_L_Depth.hlsl entry_point HPS_Smoke_L_Depth_Illum_PS target ps_3_0 } material HPS_SMOKE_L_Depth { technique { pass { IllumTechniques { RenderTechnique HPS { particle_script GameTools/Little perspective false vparam_radius baseRadius update_interval 1 } RenderTechnique SphericalBillboard { texture_unit_id 1 } RenderTechnique IllumVolume { update_interval 1 //depths 4 resolution 128 } } vertex_program_ref HPS_Smoke_L_Depth_VS { param_named_auto worldViewProj worldviewproj_matrix 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 HPS_Smoke_L_Depth_PS { param_named_auto Proj projection_matrix param_named_auto farplane far_clip_distance } depth_check off depth_write off scene_blend alpha_blend //impostor texture texture_unit { //filtering none } //scene depth texture texture_unit { filtering none } //lightVolume texture_unit { //filtering none } } } } vertex_program Smoke_IllumVolume_VS hlsl { source GameTools_Smoke_IllumVolume.hlsl entry_point SmokeIllumVolumeVS target vs_3_0 } fragment_program HPS_IllumVolume_PS hlsl { source GameTools_Smoke_IllumVolume.hlsl entry_point SmokeIllumVolumePS target ps_3_0 } material 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 Smoke_IllumVolume_VS { param_named_auto worldViewProj worldviewproj_matrix param_named_auto worldView worldview_matrix param_named_auto Proj projection_matrix } fragment_program_ref HPS_IllumVolume_PS { } texture_unit { texture pamacs.dds } } } }