Browse Source

Using lightmap encoding everywhere lightMap is used in glsl

Benjamin MICHEL 5 years ago
parent
commit
b314f78de9

+ 2 - 1
src/renderers/shaders/ShaderChunk/lights_fragment_maps.glsl.js

@@ -3,7 +3,8 @@ export default /* glsl */`
 
 	#ifdef USE_LIGHTMAP
 
-		vec3 lightMapIrradiance = texture2D( lightMap, vUv2 ).xyz * lightMapIntensity;
+		vec4 lightMapTexel= texture2D( lightMap, vUv2 );
+		vec3 lightMapIrradiance = lightMapTexelToLinear( lightMapTexel ).rgb * lightMapIntensity;
 
 		#ifndef PHYSICALLY_CORRECT_LIGHTS
 

+ 3 - 2
src/renderers/shaders/ShaderLib/meshbasic_frag.glsl.js

@@ -41,8 +41,9 @@ void main() {
 
 	// accumulation (baked indirect lighting only)
 	#ifdef USE_LIGHTMAP
-
-		reflectedLight.indirectDiffuse += texture2D( lightMap, vUv2 ).xyz * lightMapIntensity;
+	
+		vec4 lightMapTexel= texture2D( lightMap, vUv2 );
+		reflectedLight.indirectDiffuse += lightMapTexelToLinear( lightMapTexel ).rgb * lightMapIntensity;
 
 	#else