InterleavedBuffer

"Interleaved" means that multiple attributes, possibly of different types, (e.g., position, normal, uv, color) are packed into a single array buffer.

An introduction into interleaved arrays can be found here: Interleaved array basics.

Examples

webgl / buffergeometry / points / interleaved

Constructor

InterleavedBuffer(array : TypedArray, stride : Integer)

array — A typed array with a shared buffer. Stores the geometry data.
stride — The number of typed-array elements per vertex.

Properties

.array : Array

A typed array with a shared buffer. Stores the geometry data.

.stride : Integer

The number of typed-array elements per vertex.

.count : Integer

Gives the total number of elements in the array.

.updateRange : Object

Object containing offset and count.

.uuid : String

UUID of this instance. This gets automatically assigned, so this shouldn't be edited.

.version : Integer

A version number, incremented every time the needsUpdate property is set to true.

.needsUpdate : Boolean

Default is false. Setting this to true increments version.

.usage : Usage

Defines the intended usage pattern of the data store for optimization purposes. Corresponds to the usage parameter of WebGLRenderingContext.bufferData().

Methods

.copy(source : InterleavedBuffer) → this

Copies another InterleavedBuffer to this InterleavedBuffer.

.copyAt(index1 : Integer, attribute : InterleavedBuffer, index2 : Integer) → this

Copies data from attribute[index2] to array[index1].

.set(value : TypedArray, offset : Integer) → this

value — The source (typed) array.
offset — The offset into the target array at which to begin writing values from the source array. Default is 0.

Stores multiple values in the buffer, reading input values from a specified array.

.clone(data : Object) → InterleavedBuffer

data — This object holds shared array buffers required for properly cloning geometries with interleaved attributes.

Creates a clone of this InterleavedBuffer.

.setUsage(value : Usage) → this

Set usage to value.

Source

For more info on how to obtain the source code of this module see this page.