1// 2// Vertex shader for most of the frament shader 3// 4#version 120 5 6attribute vec4 wings_tangent; 7 8uniform vec4 diffuse; 9 10varying vec3 ws_normal; // world space 11varying vec4 ws_tangent; // world space 12varying vec3 ws_position; // world space 13varying vec4 v_basecolor; 14 15uniform mat3x4 ws_matrix; 16 17void main(void) 18{ 19 ws_position = mat3x3(ws_matrix)*gl_Vertex.xyz; 20 // ws_position = gl_Vertex.xyz; 21 v_basecolor = diffuse * gl_Color; 22 ws_normal = normalize(mat3x3(ws_matrix)*gl_Normal); 23 vec3 T = mat3x3(ws_matrix)*wings_tangent.xyz; 24 ws_tangent = vec4(T.xyz, wings_tangent.w); 25 gl_TexCoord[0] = gl_MultiTexCoord0; 26#ifdef __GLSL_CG_DATA_TYPES // Fix clipping for Nvidia and ATI 27 gl_ClipVertex = gl_ModelViewMatrix * gl_Vertex; 28#endif 29 gl_Position = gl_ModelViewProjectionMatrix * gl_Vertex; 30} 31