362 lines
6.0 KiB
Plaintext
362 lines
6.0 KiB
Plaintext
|
|
vertex_program PlasticVP_med cg
|
|
{
|
|
source materials/programs/plastic_med.cgfx
|
|
|
|
profiles vs_1_1 arbvp1
|
|
entry_point plastic_vp_simple
|
|
|
|
default_params
|
|
{
|
|
param_named_auto WorldITXf inverse_transpose_world_matrix
|
|
param_named_auto WorldXf world_matrix
|
|
param_named_auto ViewIXf inverse_view_matrix
|
|
param_named_auto WvpXf worldviewproj_matrix
|
|
param_named_auto AmbiColor ambient_light_colour
|
|
param_named_auto Lamp0Pos light_position 0
|
|
param_named_auto Lamp1Pos light_position 1
|
|
param_named_auto Lamp0Color light_diffuse_colour 0
|
|
param_named_auto Lamp1Color light_diffuse_colour 1
|
|
param_named Kr float 0.35
|
|
param_named FresnelMin float 0.05
|
|
|
|
}
|
|
}
|
|
|
|
|
|
fragment_program PlasticFP_med cg
|
|
{
|
|
source materials/programs/plastic_med.cgfx
|
|
entry_point plastic_fp_simple
|
|
profiles ps_2_0 arbfp1
|
|
|
|
default_params
|
|
{
|
|
param_named_auto Lamp0Color light_diffuse_colour 0
|
|
param_named Ks float 0.75
|
|
param_named SpecExpon float 81
|
|
}
|
|
}
|
|
|
|
vertex_program PlasticVP_high cg
|
|
{
|
|
source materials/programs/plastic_high.cgfx
|
|
|
|
profiles vs_1_1 arbvp1
|
|
entry_point plastic_vp_precise
|
|
|
|
default_params
|
|
{
|
|
param_named_auto WorldITXf inverse_transpose_world_matrix
|
|
param_named_auto WorldXf world_matrix
|
|
param_named_auto ViewIXf inverse_view_matrix
|
|
param_named_auto WvpXf worldviewproj_matrix
|
|
param_named_auto Lamp0Pos light_position 0
|
|
param_named_auto Lamp1Pos light_position 1
|
|
}
|
|
}
|
|
|
|
|
|
|
|
fragment_program PlasticFP_high cg
|
|
{
|
|
source materials/programs/plastic_high.cgfx
|
|
entry_point plastic_fp_precise
|
|
profiles ps_2_0 arbfp1
|
|
|
|
default_params
|
|
{
|
|
param_named Ks float 0.75
|
|
param_named SpecExpon float 81
|
|
|
|
param_named_auto AmbiColor ambient_light_colour
|
|
param_named_auto Lamp0Color light_diffuse_colour 0
|
|
param_named_auto Lamp1Color light_diffuse_colour 1
|
|
|
|
// lerp Kr and FresnelMin towards 1,1 according to sqrt of reflection parameter (since they are multiplied)
|
|
// to emulate legacy style reflection paramter. reflection parameter expected to be [0..1] range.
|
|
// if you change these, remember to change matching hard-coded parameters in-engine (look for Kr and FresnelMin)
|
|
param_named Kr float 0.45
|
|
param_named FresnelMin float 0.05
|
|
param_named FresnelExp float 3.55
|
|
}
|
|
}
|
|
|
|
//todo: need a med and high quality studless once we decide to go with high fidelidty plastic.
|
|
material PlasticStudless
|
|
{
|
|
technique
|
|
{
|
|
pass
|
|
{
|
|
ambient vertexcolour
|
|
diffuse vertexcolour
|
|
specular 0.9 0.9 0.9 50
|
|
}
|
|
}
|
|
}
|
|
|
|
material PlasticStudlessTransparent : PlasticStudless
|
|
{
|
|
technique
|
|
{
|
|
pass
|
|
{
|
|
scene_blend alpha_blend
|
|
depth_write off
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
material PlasticStuds_Low : PlasticStudless
|
|
{
|
|
technique
|
|
{
|
|
pass
|
|
{
|
|
texture_unit
|
|
{
|
|
texture_alias StudsAlways
|
|
tex_coord_set 0
|
|
texture textures/SurfacesAlpha.png
|
|
colour_op alpha_blend
|
|
//ignore alpha from SurfaceAlpha.png. Use fixed alpha. VERY IMPORTANT FOR OFF-SCREEN RENDERING!
|
|
alpha_op_ex source1 src_manual src_manual 1 1 1
|
|
filtering trilinear
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
material Plastic_Low : PlasticStudless
|
|
{
|
|
technique
|
|
{
|
|
pass
|
|
{
|
|
texture_unit
|
|
{
|
|
texture_alias Studs
|
|
tex_coord_set 0
|
|
texture textures/SurfacesAlpha.png
|
|
colour_op alpha_blend
|
|
//ignore alpha from SurfaceAlpha.png. Use fixed alpha. VERY IMPORTANT FOR OFF-SCREEN RENDERING!
|
|
alpha_op_ex source1 src_manual src_manual 1 1 1
|
|
filtering trilinear
|
|
}
|
|
}
|
|
}
|
|
}
|
|
material PlasticStuds_Med : PlasticStudless
|
|
{
|
|
technique
|
|
{
|
|
pass
|
|
{
|
|
max_lights 2
|
|
|
|
vertex_program_ref PlasticVP_med
|
|
{
|
|
}
|
|
|
|
fragment_program_ref PlasticFP_med
|
|
{
|
|
|
|
}
|
|
|
|
texture_unit
|
|
{
|
|
texture_alias StudsAlways
|
|
tex_coord_set 0
|
|
texture textures/SurfacesAlpha.png
|
|
filtering trilinear
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
material Plastic_Med : PlasticStudless
|
|
{
|
|
technique
|
|
{
|
|
pass
|
|
{
|
|
max_lights 2
|
|
|
|
vertex_program_ref PlasticVP_med
|
|
{
|
|
}
|
|
|
|
fragment_program_ref PlasticFP_med
|
|
{
|
|
|
|
}
|
|
|
|
texture_unit
|
|
{
|
|
texture_alias Studs
|
|
tex_coord_set 0
|
|
texture textures/SurfacesAlpha.png
|
|
filtering trilinear
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
material PlasticStuds_High : PlasticStudless
|
|
{
|
|
technique
|
|
{
|
|
lod_index 0
|
|
pass
|
|
{
|
|
max_lights 2
|
|
|
|
vertex_program_ref PlasticVP_high
|
|
{
|
|
}
|
|
|
|
fragment_program_ref PlasticFP_high
|
|
{
|
|
}
|
|
|
|
texture_unit
|
|
{
|
|
texture_alias StudsAlways
|
|
tex_coord_set 0
|
|
texture textures/SurfacesAlpha.png
|
|
filtering trilinear
|
|
}
|
|
|
|
texture_unit
|
|
{
|
|
texture_alias SkyBox
|
|
tex_coord_set 1
|
|
texture textures/penv.dds cubic
|
|
filtering trilinear
|
|
}
|
|
}
|
|
}
|
|
|
|
}
|
|
|
|
material Plastic_High : PlasticStudless
|
|
{
|
|
technique
|
|
{
|
|
lod_index 0
|
|
pass
|
|
{
|
|
max_lights 2
|
|
|
|
vertex_program_ref PlasticVP_high
|
|
{
|
|
}
|
|
|
|
fragment_program_ref PlasticFP_high
|
|
{
|
|
}
|
|
|
|
texture_unit
|
|
{
|
|
texture_alias Studs
|
|
tex_coord_set 0
|
|
texture textures/SurfacesAlpha.png
|
|
filtering trilinear
|
|
}
|
|
|
|
texture_unit
|
|
{
|
|
texture_alias SkyBox
|
|
tex_coord_set 1
|
|
texture textures/penv.dds cubic
|
|
filtering trilinear
|
|
}
|
|
}
|
|
}
|
|
|
|
}
|
|
material PlasticTransparent_Low : Plastic_Low
|
|
{
|
|
technique
|
|
{
|
|
pass
|
|
{
|
|
scene_blend alpha_blend
|
|
depth_write off
|
|
|
|
texture_unit
|
|
{
|
|
//ignore alpha from SurfaceAlpha.png. Use alpha from vertices.
|
|
alpha_op_ex source1 src_diffuse src_texture
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
material PlasticStudsTransparent_Low : PlasticStuds_Low
|
|
{
|
|
technique
|
|
{
|
|
pass
|
|
{
|
|
scene_blend alpha_blend
|
|
depth_write off
|
|
|
|
texture_unit
|
|
{
|
|
//ignore alpha from SurfaceAlpha.png. Use alpha from vertices.
|
|
alpha_op_ex source1 src_diffuse src_texture
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
material PlasticTransparent_Med : Plastic_Med
|
|
{
|
|
technique
|
|
{
|
|
pass
|
|
{
|
|
scene_blend alpha_blend
|
|
depth_write off
|
|
}
|
|
}
|
|
}
|
|
material PlasticStudsTransparent_Med : PlasticStuds_Med
|
|
{
|
|
technique
|
|
{
|
|
pass
|
|
{
|
|
scene_blend alpha_blend
|
|
depth_write off
|
|
}
|
|
}
|
|
}
|
|
material PlasticTransparent_High : Plastic_High
|
|
{
|
|
technique
|
|
{
|
|
pass
|
|
{
|
|
scene_blend alpha_blend
|
|
depth_write off
|
|
}
|
|
}
|
|
}
|
|
material PlasticStudsTransparent_High : PlasticStuds_High
|
|
{
|
|
technique
|
|
{
|
|
pass
|
|
{
|
|
scene_blend alpha_blend
|
|
depth_write off
|
|
}
|
|
}
|
|
}
|
|
|