//This file is automatically rebuilt by the Cesium build process. /*global define*/ define(function() { "use strict"; return "varying vec3 v_positionMC;\n\ varying vec3 v_positionEC;\n\ varying vec2 v_st;\n\ \n\ void main()\n\ {\n\ czm_materialInput materialInput;\n\ \n\ vec3 normalEC = czm_normal3D * czm_geodeticSurfaceNormal(v_positionMC, vec3(0.0), vec3(1.0));\n\ #ifdef FACE_FORWARD\n\ normalEC = normalize(faceforward(normalEC, vec3(0.0, 0.0, 1.0), -normalEC));\n\ #else\n\ normalEC = normalize(normalEC);\n\ #endif\n\ \n\ materialInput.s = v_st.s;\n\ materialInput.st = v_st;\n\ materialInput.str = vec3(v_st, 0.0);\n\ \n\ // Convert tangent space material normal to eye space\n\ materialInput.normalEC = normalEC;\n\ materialInput.tangentToEyeMatrix = czm_eastNorthUpToEyeCoordinates(v_positionMC, materialInput.normalEC);\n\ \n\ // Convert view vector to world space\n\ vec3 positionToEyeEC = -v_positionEC; \n\ materialInput.positionToEyeEC = positionToEyeEC;\n\ \n\ czm_material material = czm_getMaterial(materialInput);\n\ \n\ #ifdef FLAT \n\ gl_FragColor = vec4(material.diffuse + material.emission, material.alpha);\n\ #else\n\ gl_FragColor = czm_phong(normalize(positionToEyeEC), material);\n\ #endif\n\ }\n\ "; });