Browse Source

fix change material properties after onBeforeCompile

sunag 5 years ago
parent
commit
19c0ee25ea
1 changed files with 4 additions and 4 deletions
  1. 4 4
      src/renderers/WebGLRenderer.js

+ 4 - 4
src/renderers/WebGLRenderer.js

@@ -713,10 +713,10 @@ function WebGLRenderer( parameters ) {
 
 
 		var frontFaceCW = ( object.isMesh && object.matrixWorld.determinant() < 0 );
 		var frontFaceCW = ( object.isMesh && object.matrixWorld.determinant() < 0 );
 
 
-		state.setMaterial( material, frontFaceCW );
-
 		var program = setProgram( camera, fog, material, object );
 		var program = setProgram( camera, fog, material, object );
 
 
+		state.setMaterial( material, frontFaceCW );
+
 		var updateBuffers = false;
 		var updateBuffers = false;
 
 
 		if ( _currentGeometryProgram.geometry !== geometry.id ||
 		if ( _currentGeometryProgram.geometry !== geometry.id ||
@@ -1472,10 +1472,10 @@ function WebGLRenderer( parameters ) {
 
 
 		if ( object.isImmediateRenderObject ) {
 		if ( object.isImmediateRenderObject ) {
 
 
-			state.setMaterial( material );
-
 			var program = setProgram( camera, scene.fog, material, object );
 			var program = setProgram( camera, scene.fog, material, object );
 
 
+			state.setMaterial( material );
+
 			_currentGeometryProgram.geometry = null;
 			_currentGeometryProgram.geometry = null;
 			_currentGeometryProgram.program = null;
 			_currentGeometryProgram.program = null;
 			_currentGeometryProgram.wireframe = false;
 			_currentGeometryProgram.wireframe = false;