UFO: Alien Invasion
Doxygen documentation generating
model_high_vs.glsl
Go to the documentation of this file.
1 /**
2  * @file
3  * @brief Default battlescape model vertex shader.
4  */
5 
6 uniform float OFFSET;
7 uniform int BUMPMAP;
8 uniform int ANIMATE;
9 
10 /* from includes:
11 varying vec3 normal;
12 
13 attribute vec4 NEXT_FRAME_VERTS;
14 attribute vec4 NEXT_FRAME_NORMALS;
15 attribute vec4 NEXT_FRAME_TANGENTS;
16 uniform float TIME;
17 
18 uniform vec3 SUNDIRECTION;
19 
20 out_qualifier vec3 sunDir;
21 
22 vec4 Vertex;
23 vec3 Normal;
24 vec4 Tangent;
25 
26 varying vec3 eyedir;
27 varying vec3 lightDirs[];
28 varying vec3 staticLightDir;
29 
30 varying float fog;
31 */
32 
33 #include "lerp_vs.glsl"
34 #include "light_vs.glsl"
35 #include "transform_lights_vs.glsl"
36 #include "fog_vs.glsl"
37 
38 /**
39  * @brief Main.
40  */
41 void main(void) {
42  if (ANIMATE > 0) {
43  lerpVertex();
44  } else {
45  Vertex = gl_Vertex;
46  Normal = gl_Normal;
47  Tangent = TANGENTS;
48  }
49 
50  /* MVP transform into clip space.*/
51  /*gl_Position = ftransform();*/
52  gl_Position = gl_ProjectionMatrix * gl_ModelViewMatrix * vec4(Vertex);
53 
54 
55  /* Pass texcoords through.*/
56  gl_TexCoord[0] = gl_MultiTexCoord0 + OFFSET;
57  gl_TexCoord[1] = gl_MultiTexCoord1 + OFFSET;
58 
59  LightVertex();
60 
61  TransformLights();
62 
63 #if r_fog
64  FogVertex();
65 #endif
66 }