|
@@ -284,28 +284,36 @@ Object.assign( Geometry.prototype, EventDispatcher.prototype, {
|
|
|
|
|
|
}
|
|
}
|
|
|
|
|
|
- if ( indices !== undefined ) {
|
|
|
|
|
|
+ var groups = geometry.groups;
|
|
|
|
|
|
- var groups = geometry.groups;
|
|
|
|
|
|
+ if ( groups.length > 0 ) {
|
|
|
|
|
|
- if ( groups.length > 0 ) {
|
|
|
|
|
|
+ for ( var i = 0; i < groups.length; i ++ ) {
|
|
|
|
|
|
- for ( var i = 0; i < groups.length; i ++ ) {
|
|
|
|
|
|
+ var group = groups[ i ];
|
|
|
|
|
|
- var group = groups[ i ];
|
|
|
|
|
|
+ var start = group.start;
|
|
|
|
+ var count = group.count;
|
|
|
|
|
|
- var start = group.start;
|
|
|
|
- var count = group.count;
|
|
|
|
|
|
+ for ( var j = start, jl = start + count; j < jl; j += 3 ) {
|
|
|
|
|
|
- for ( var j = start, jl = start + count; j < jl; j += 3 ) {
|
|
|
|
|
|
+ if ( indices !== undefined ) {
|
|
|
|
|
|
addFace( indices[ j ], indices[ j + 1 ], indices[ j + 2 ], group.materialIndex );
|
|
addFace( indices[ j ], indices[ j + 1 ], indices[ j + 2 ], group.materialIndex );
|
|
|
|
|
|
|
|
+ } else {
|
|
|
|
+
|
|
|
|
+ addFace( j, j + 1, j + 2, group.materialIndex );
|
|
|
|
+
|
|
}
|
|
}
|
|
|
|
|
|
}
|
|
}
|
|
|
|
|
|
- } else {
|
|
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ } else {
|
|
|
|
+
|
|
|
|
+ if ( indices !== undefined ) {
|
|
|
|
|
|
for ( var i = 0; i < indices.length; i += 3 ) {
|
|
for ( var i = 0; i < indices.length; i += 3 ) {
|
|
|
|
|
|
@@ -313,13 +321,13 @@ Object.assign( Geometry.prototype, EventDispatcher.prototype, {
|
|
|
|
|
|
}
|
|
}
|
|
|
|
|
|
- }
|
|
|
|
|
|
+ } else {
|
|
|
|
|
|
- } else {
|
|
|
|
|
|
+ for ( var i = 0; i < positions.length / 3; i += 3 ) {
|
|
|
|
|
|
- for ( var i = 0; i < positions.length / 3; i += 3 ) {
|
|
|
|
|
|
+ addFace( i, i + 1, i + 2 );
|
|
|
|
|
|
- addFace( i, i + 1, i + 2 );
|
|
|
|
|
|
+ }
|
|
|
|
|
|
}
|
|
}
|
|
|
|
|