12345678910111213141516 |
- precision mediump float;
- uniform vec4 color;
- uniform sampler2D texture;
- varying vec3 vertexNormal;
- varying vec2 vertexTexCoord;
- void main() {
- vec3 normal = normalize(vertexNormal);
- float lambert = max(0.0, -normal.z);
- float rim = 1.0 - lambert;
- rim *= rim * rim;
- vec4 texColor = texture2D(texture, vertexTexCoord);
- gl_FragColor = rim + (0.4 + 0.4 * lambert) * texColor * color;
- }
|