Browse Source

Render sort order should consider shared shaders to minimize switching (#9164)

Brian Chirls 9 years ago
parent
commit
570499d5e6
1 changed files with 4 additions and 0 deletions
  1. 4 0
      src/renderers/WebGLRenderer.js

+ 4 - 0
src/renderers/WebGLRenderer.js

@@ -1042,6 +1042,10 @@ THREE.WebGLRenderer = function ( parameters ) {
 
 
 			return a.object.renderOrder - b.object.renderOrder;
 			return a.object.renderOrder - b.object.renderOrder;
 
 
+		} else if ( a.material.program && b.material.program && a.material.program !== b.material.program ) {
+
+			return a.material.program.id - b.material.program.id;
+
 		} else if ( a.material.id !== b.material.id ) {
 		} else if ( a.material.id !== b.material.id ) {
 
 
 			return a.material.id - b.material.id;
 			return a.material.id - b.material.id;