瀏覽代碼

WebGLRenderer: Handle geometry groups without multi-material. See #7057

Mr.doob 10 年之前
父節點
當前提交
287847416d
共有 1 個文件被更改,包括 9 次插入1 次删除
  1. 9 1
      src/renderers/WebGLRenderer.js

+ 9 - 1
src/renderers/WebGLRenderer.js

@@ -1342,10 +1342,10 @@ THREE.WebGLRenderer = function ( parameters ) {
 					}
 
 					var geometry = objects.update( object );
+					var groups = geometry.groups;
 
 					if ( material instanceof THREE.MeshFaceMaterial ) {
 
-						var groups = geometry.groups;
 						var materials = material.materials;
 
 						for ( var i = 0, l = groups.length; i < l; i ++ ) {
@@ -1361,6 +1361,14 @@ THREE.WebGLRenderer = function ( parameters ) {
 
 						}
 
+					} else if ( groups.length > 0 ) {
+
+						for ( var i = 0, l = groups.length; i < l; i ++ ) {
+
+							pushRenderItem( object, geometry, material, _vector3.z, groups[ i ] );
+
+						}
+
 					} else {
 
 						pushRenderItem( object, geometry, material, _vector3.z );