1varying vec3 varWorldPos;
2varying vec3 varWorldNormal;
3varying vec2 varTex0;
4
5// This is where actual shader code begins
6void main() {
7   vec4 objPos = ATTRIB_position;
8   vec4 worldPos = UNI_model * objPos;
9   gl_Position = UNI_proj * worldPos;
10
11   mat3 model3 = mat3(UNI_model[0].xyz, UNI_model[1].xyz, UNI_model[2].xyz);
12   vec3 worldNorm = model3 * ATTRIB_normal;
13
14   varWorldPos = worldPos.xyz;
15   varWorldNormal = worldNorm;
16   varTex0 = ATTRIB_texture0;
17}
18