three
Version:
JavaScript 3D library
69 lines (47 loc) • 1.52 kB
JavaScript
export default /* glsl */`
uniform vec3 diffuse;
uniform float opacity;
varying vec3 vNormal;
void main() {
vec4 diffuseColor = vec4( diffuse, opacity );
ReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) );
// accumulation (baked indirect lighting only)
reflectedLight.indirectDiffuse += texture2D( lightMap, vUv2 ).xyz * lightMapIntensity;
reflectedLight.indirectDiffuse += vec3( 1.0 );
// modulation
reflectedLight.indirectDiffuse *= diffuseColor.rgb;
vec3 outgoingLight = reflectedLight.indirectDiffuse;
gl_FragColor = vec4( outgoingLight, diffuseColor.a );
}
`;