uniform sampler2D U_MainTexture; varying vec3 V_Normal; varying vec4 V_WorldPos;//µ±Ç°µÄλÖà varying vec2 V_Texcoord; void main() { vec3 lightPos = vec3(0.0, 10.0, 0.0); vec3 L=lightPos; L = normalize(L); vec3 n = normalize(V_Normal); //ambient vec4 AmbientLightColor = vec4(0.2, 0.2, 0.2, 1.0); vec4 AmbientMaterial = vec4(0.2, 0.2, 0.2, 1.0); vec4 AmbientColor = AmbientLightColor*AmbientMaterial; //diffuse vec4 DiffuseLightColor = vec4(1.0,1.0,1.0,1.0); vec4 DiffuseMaterial = vec4(0.8, 0.8, 0.8, 1.0); vec4 diffuseColor = DiffuseLightColor*DiffuseMaterial*max(0.0, dot(L,n)); gl_FragColor = AmbientColor + texture2D(U_MainTexture, V_Texcoord) * diffuseColor; }