;
; Vertex/fragment shader templates
;
vf_reflect
{
  ; Just reflection
  vertex_shader
  {
    file=dyn_standard_reflect_v.cg
  }
  fragment_shader
  {
    file=dyn_standard_reflect_f.cg
  }
}

vf_reflect_spec
{
  ; Just reflection
  vertex_shader
  {
    file=dyn_standard_reflect_v.cg
  }
  fragment_shader
  {
    file=dyn_standard_reflect_f.cg
  }
}
vf_glass
{
  ; Just reflection
  vertex_shader
  {
    file=dyn_standard_reflect_window_v.cg
  }
  fragment_shader
  {
    file=dyn_standard_reflect_window_f.cg
  }
}

vf_chrome
{
  ; Just reflection
  vertex_shader
  {
    file=dyn_standard_reflect_v.cg
  }
  fragment_shader
  {
    file=dyn_standard_reflect_f.cg
  }
}
vf_reflect_bump
{
  ; Just reflection
  vertex_shader
  {
    file=dyn_standard_reflect_v.cg
  }
  fragment_shader
  {
    file=dyn_standard_reflect_f.cg
  }
}
vf_bump
{
  vertex_shader
  {
    file=dyn_standard_bump_v.cg
  }
  fragment_shader
  {
    file=dyn_standard_bump_f.cg
  }
}

vf_detail_bump
{ 
  ; Texture+bumpmap+reflection map
  vertex_shader
  {
    ;file=cg/dyn_standard_bump_detail_v.cg
    file=dyn_standard_reflect_v.cg
  }
  fragment_shader
  {
    ;file=cg/dyn_standard_bump_detail_f.cg
    file=dyn_standard_reflect_f.cg
  }
}

vf_standard
{
  vertex_shader
  {
    file=dyn_standard_v.cg
  }
  fragment_shader
  {
    file=standard_f.cg
  }
}

vf_heat
{
;Brake disc heat shader
  vertex_shader
  {
    file=dyn_standard_v.cg
  }
  fragment_shader
  {
    file=standard_brakeheat_f.cg
  }
}

vf_standard_spec
{
  vertex_shader
  {
    file=dyn_standard_v.cg
  }
  fragment_shader
  {
    file=standard_f.cg
  }
}

shader_karoseria~vf_reflect
{
tangents=1
diffuse=2.0 2.0 2.0
ambient=1.2 1.2 1.2
specular=0 0 0
shininess=100
reflect=0.25
compression=0
  layer0
  {
    map=karoseria.tga
  }
   layer1
  {
    ; Reflection cubemap
    map=$trackenvmap
    mode=linear
  }
}
shader_windows~vf_reflect
{
;was using dyn_reflect_window.cg - shader is buggy ATM (Racer 088)
;temporarily using chrome shader - no fresnel
sort_offset=1
;sort offset needed, otherwise glass hides lit headlamp models..
reflect=1.0
diffuse=1.0 1.0 1.0
ambient=1.0 1.0 1.0
;cull=none
layer0
{
  map=szyby.tga
  shininess=20
  blendfunc=blend
  specular=0.0 0.0 0.0 1.0 
  depthwrite=0
 }
 layer1
  {
   map=$trackenvmap
   depthwrite=0
   }
}
shader_metal~vf_reflect
{
compression=0
ambient=0.8 0.8 0.8
diffuse=0.1 0.1 0.1
specular=0.0 0.0 0.0 ; no specular for solid colours
shininess=16
reflect=1.0 ;max reflect, for chrome - bodge with modded dyn_reflect shader
sort_offset=1
compression=0
  layer0
  {
    map=metal.tga
  }
   layer1
  {
    ; Reflection cubemap
    map=$trackenvmap
  }
}
shader_inter~vf_standard
{
  layer0
  {
    map=inter.tga
  }
}
shader_siatka~vf_reflect
{
;was using dyn_reflect_window.cg - shader is buggy ATM (Racer 088)
;temporarily using chrome shader - no fresnel
sort_offset=1
;sort offset needed, otherwise glass hides lit headlamp models..
reflect=1.0
diffuse=1.0 1.0 1.0
ambient=1.0 1.0 1.0
;cull=none
layer0
{
  map=siatka.tga
  shininess=20
  blendfunc=blend
  specular=0.0 0.0 0.0 1.0 
  depthwrite=0
 }
 layer1
  {
   map=$trackenvmap
   depthwrite=0
   }
}
shader_licznik~vf_standard
{
  layer0
  {
    map=licznik.tga
  }
}
shader_dywaniki~vf_standard
{
  layer0
  {
    map=dywaniki.tga
  }
}
shader_bagaznik~vf_standard
{
  layer0
  {
    map=bagaznik.tga
  }
}
shader_plate~vf_standard
{
  layer0
  {
    map=plate.tga
  }
}
shader_czarne~vf_standard
{
  layer0
  {
    map=czarne.tga
  }
}
shader_wydech~vf_standard
{
  layer0
  {
    map=wydech.tga
  }
}
shader_siedzenia~vf_standard
{
  layer0
  {
    map=siedzenia.tga
  }
}
shader_vehiclelights128~vf_standard
{
  layer0
  {
    map=vehiclelights128.tga
  }
}
shader_piondvd~vf_standard
{
  layer0
  {
    map=piondvd.tga
  }
}
shader_bump~vf_standard
{
  layer0
  {
    map=bump.tga
  }
}
shader_detals~vf_standard
{
  layer0
  {
    map=detals.tga
  }
}
shader_silnik~vf_standard
{
  layer0
  {
    map=silnik.tga
  }
}
shader_aem~vf_standard
{
  layer0
  {
    map=aem.tga
  }
}
shader_lights~vf_standard
{
  layer0
  {
    map=lights.tga
  }
}
shader_opona~vf_bumpspeca
{
  shininess=18
  specular=0.4 0.4 0.45 1
  tangents=1
  layer0
  {
    map=opona.tga
  }
  layer1
  {
    compression=0
    mode=linear
    map=tirea0_bump.tga
  }
}
shader_tarcze~vf_standard
{
  layer0
  {
    map=tarcze.tga
  }
}
shader_felga~vf_reflect
{
  reflect=1
  specular=0.5 0.5 0.5 1
  shininess=32
  fresnel
  {
    bias=0.5
    scale=0.5
    power=2
  }
  layer0
  {
    map=felga.tga
  }
  layer1
  {
    map=$trackenvmap
  }
}
shader_mirror~vf_standard
{
  diffuse=.5 .5 .5
  layer0
    {
       map=$mirror
    }
}
shader_lights1~vf_standard
{
  sort_offset=1
  layer0
    {
       map=lights1.tga
       blendfunc=add
       ;texenv=replace
       emission=30 30 30 1
    }
}
shader_lights2~vf_standard
{
  sort_offset=1
  layer0
    {
       map=lights2.tga
       blendfunc=add
       ;texenv=replace
       emission=30 30 30 1
    }
}
shader_lights3~vf_standard
{
  sort_offset=1
  layer0
    {
       map=lights3.tga
       blendfunc=add
       ;texenv=replace
       emission=30 30 30 1
    }
}
shader_lights4~vf_standard
{
  sort_offset=1
  layer0
    {
       map=lights4.tga
       blendfunc=add
       ;texenv=replace
       emission=30 30 30 1
    }
}
shader_lights5~vf_standard
{
  sort_offset=1
  layer0
    {
       map=lights5.tga
       blendfunc=add
       ;texenv=replace
       emission=30 30 30 1
    }
}
shader_lights7~vf_standard
{
  sort_offset=1
  layer0
    {
       map=lights7.tga
       blendfunc=add
       ;texenv=replace
       emission=30 30 30 1
    }
}