Browse Source

Merge pull request #20085 from Mugen87/dev45

WebGLRenderer: Avoid frame-late bug with converted env maps.
Mr.doob 5 years ago
parent
commit
1ae605f792
1 changed files with 5 additions and 2 deletions
  1. 5 2
      src/renderers/WebGLRenderer.js

+ 5 - 2
src/renderers/WebGLRenderer.js

@@ -1329,7 +1329,11 @@ function WebGLRenderer( parameters ) {
 
 		} else if ( parameters.shaderID !== undefined ) {
 
-			// same glsl and uniform list
+			// same glsl and uniform list, envMap still needs the update here to avoid a frame-late effect
+
+			const environment = material.isMeshStandardMaterial ? scene.environment : null;
+			materialProperties.envMap = cubemaps.get( material.envMap || environment );
+
 			return;
 
 		} else {
@@ -1504,7 +1508,6 @@ function WebGLRenderer( parameters ) {
 			} else if ( materialProperties.envMap !== envMap ) {
 
 				initMaterial( material, scene, object );
-				materialProperties.envMap = envMap;
 
 			}