46 lines
923 B
JavaScript
46 lines
923 B
JavaScript
import { BufferAttribute } from './BufferAttribute.js';
|
|
|
|
/**
|
|
* @author benaadams / https://twitter.com/ben_a_adams
|
|
*/
|
|
|
|
function InstancedBufferAttribute( array, itemSize, normalized, meshPerAttribute ) {
|
|
|
|
if ( typeof ( normalized ) === 'number' ) {
|
|
|
|
meshPerAttribute = normalized;
|
|
|
|
normalized = false;
|
|
|
|
console.error( 'THREE.InstancedBufferAttribute: The constructor now expects normalized as the third argument.' );
|
|
|
|
}
|
|
|
|
BufferAttribute.call( this, array, itemSize, normalized );
|
|
|
|
this.meshPerAttribute = meshPerAttribute || 1;
|
|
|
|
}
|
|
|
|
InstancedBufferAttribute.prototype = Object.assign( Object.create( BufferAttribute.prototype ), {
|
|
|
|
constructor: InstancedBufferAttribute,
|
|
|
|
isInstancedBufferAttribute: true,
|
|
|
|
copy: function ( source ) {
|
|
|
|
BufferAttribute.prototype.copy.call( this, source );
|
|
|
|
this.meshPerAttribute = source.meshPerAttribute;
|
|
|
|
return this;
|
|
|
|
}
|
|
|
|
} );
|
|
|
|
|
|
|
|
export { InstancedBufferAttribute };
|