1// $LastChangedDate: 2010-11-12 11:27:22 -0500 (Fri, 12 Nov 2010) $ 2// Vertex shader (aircraft, a=color.a). 3 4@include inc_vert.glsl 5@include inc_ComputeDiffuseSpecular_vert.glsl 6 7#ifndef SPECULAR_SCALE 8#define SPECULAR_SCALE 0.4 9#define DIFFUSE_SCALE (1.0 - SPECULAR_SCALE) 10#endif 11#ifndef VAR_LIGHT_INTENSITY_MUL 12#define VAR_LIGHT_INTENSITY_MUL 1.30 13#define VAR_LIGHT_INTENSITY_ADD 0.30 14#define VAR_LIGHT_INTENSITY_MIN 1.75 15#endif 16 17/***************************************************************************** 18 * Vertex shader. 19 *****************************************************************************/ 20void main( void ) 21{ 22 // Compute diffuse/specular light intensity. 23 vec4 ecPosition4 = gl_ModelViewMatrix * gl_Vertex; 24 var_lightIntensity = ComputeDiffuseSpecular( ecPosition4.xyz, DIFFUSE_SCALE, SPECULAR_SCALE, 4.0 ); 25 var_lightIntensity *= VAR_LIGHT_INTENSITY_MUL; 26 var_lightIntensity += VAR_LIGHT_INTENSITY_ADD; 27 var_lightIntensity = min( VAR_LIGHT_INTENSITY_MIN, var_lightIntensity ); 28 29 // Compute color. 30 @include inc_color_vert.glsl 31 32 // Compute fog. 33 @include inc_fog_vert.glsl 34 35 // Compute shadow. 36 @include inc_shadow_vert.glsl 37 38 // Other outputs. 39 gl_Position = ftransform(); 40 gl_TexCoord[0] = gl_TextureMatrix[0] * gl_MultiTexCoord0; 41} 42