|
@@ -929,34 +929,10 @@ THREE.BufferGeometry.prototype = {
|
|
|
|
|
|
var geometry = new THREE.BufferGeometry();
|
|
|
|
|
|
- var types = [ Int8Array, Uint8Array, Uint8ClampedArray, Int16Array, Uint16Array, Int32Array, Uint32Array, Float32Array, Float64Array ];
|
|
|
-
|
|
|
for ( var attr in this.attributes ) {
|
|
|
|
|
|
var sourceAttr = this.attributes[ attr ];
|
|
|
- var sourceArray = sourceAttr.array;
|
|
|
-
|
|
|
- var attribute = {
|
|
|
-
|
|
|
- itemSize: sourceAttr.itemSize,
|
|
|
- array: null
|
|
|
-
|
|
|
- };
|
|
|
-
|
|
|
- for ( var i = 0, il = types.length; i < il; i ++ ) {
|
|
|
-
|
|
|
- var type = types[ i ];
|
|
|
-
|
|
|
- if ( sourceArray instanceof type ) {
|
|
|
-
|
|
|
- attribute.array = new type( sourceArray );
|
|
|
- break;
|
|
|
-
|
|
|
- }
|
|
|
-
|
|
|
- }
|
|
|
-
|
|
|
- geometry.attributes[ attr ] = attribute;
|
|
|
+ geometry.addAttribute( attr, sourceAttr.clone() );
|
|
|
|
|
|
}
|
|
|
|