precision highp float; // Attributes attribute vec3 position; #ifdef NORMAL attribute vec3 normal; #endif #include // Uniforms #include uniform mat4 view; uniform mat4 viewProjection; #ifdef POINTSIZE uniform float pointSize; #endif // Output varying vec3 vPositionW; #ifdef NORMAL varying vec3 vNormalW; #endif #ifdef VERTEXCOLOR varying vec4 vColor; #endif #include #include #include<__decl__lightFragment>[0..maxSimultaneousLights] void main(void) { #include #include gl_Position = viewProjection * finalWorld * vec4(position, 1.0); vec4 worldPos = finalWorld * vec4(position, 1.0); vPositionW = vec3(worldPos); #ifdef NORMAL vNormalW = normalize(vec3(finalWorld * vec4(normal, 0.0))); #endif // Clip plane #include // Fog #include #include[0..maxSimultaneousLights] // Point size #ifdef POINTSIZE gl_PointSize = pointSize; #endif }