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