|
@@ -154,9 +154,33 @@ THREE.Geometry.prototype = {
|
|
|
|
|
|
if ( indices !== undefined ) {
|
|
|
|
|
|
- for ( var i = 0; i < indices.length; i += 3 ) {
|
|
|
+ var drawcalls = geometry.drawcalls;
|
|
|
|
|
|
- addFace( indices[ i ], indices[ i + 1 ], indices[ i + 2 ] );
|
|
|
+ if ( drawcalls.length > 0 ) {
|
|
|
+
|
|
|
+ for ( var i = 0; i < drawcalls.length; i ++ ) {
|
|
|
+
|
|
|
+ var drawcall = drawcalls[ i ];
|
|
|
+
|
|
|
+ var start = drawcall.start;
|
|
|
+ var count = drawcall.count;
|
|
|
+ var index = drawcall.index;
|
|
|
+
|
|
|
+ for ( var j = start, jl = start + count; j < jl; j += 3 ) {
|
|
|
+
|
|
|
+ addFace( index + indices[ j ], index + indices[ j + 1 ], index + indices[ j + 2 ] );
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ } else {
|
|
|
+
|
|
|
+ for ( var i = 0; i < indices.length; i += 3 ) {
|
|
|
+
|
|
|
+ addFace( indices[ i ], indices[ i + 1 ], indices[ i + 2 ] );
|
|
|
+
|
|
|
+ }
|
|
|
|
|
|
}
|
|
|
|