class GPUBuffer
implements GPUObjectBase
Represents a block of memory allocated on the GPU.
Examples #
#
// Create a buffer that can be used as a vertex buffer and can be written to
const vertexBuffer = device.createBuffer({
label: "Vertex Buffer",
size: vertices.byteLength,
usage: GPUBufferUsage.VERTEX | GPUBufferUsage.COPY_DST,
});
// Write data to the buffer
device.queue.writeBuffer(vertexBuffer, 0, vertices);
// Example of creating a mapped buffer for CPU access
const stagingBuffer = device.createBuffer({
size: data.byteLength,
usage: GPUBufferUsage.MAP_WRITE | GPUBufferUsage.COPY_SRC,
mappedAtCreation: true,
});
// Copy data to the mapped buffer
new Uint8Array(stagingBuffer.getMappedRange()).set(data);
stagingBuffer.unmap();
Properties #
#mapState: GPUBufferMapState
readonly
#usage: GPUFlagsConstant
readonly
Methods #
#getMappedRange(offset?: number,size?: number,): ArrayBuffer