GPUCommandEncoder: clearBuffer() method
Experimental: This is an experimental technology
Check the Browser compatibility table carefully before using this in production.
Secure context: This feature is available only in secure contexts (HTTPS), in some or all supporting browsers.
The clearBuffer() method of the
GPUCommandEncoder interface encodes a command that fills a region of a GPUBuffer with zeroes.
Syntax
clearBuffer(buffer)
clearBuffer(buffer, offset)
clearBuffer(buffer, offset, size)
Parameters
buffer-
A
GPUBufferobject representing the buffer to clear. offsetOptional-
A number representing the offset, in bytes, from the start of the
bufferto the sub-region to clear. If omitted,offsetdefaults to 0. sizeOptional-
A number representing the size, in bytes, of the sub-region to clear. If omitted,
sizedefaults to thebuffersize -offset.
Return value
None (Undefined).
Validation
The following criteria must be met when calling clearBuffer(), otherwise a GPUValidationError is generated and the GPUCommandEncoder becomes invalid:
- The
buffer'sGPUBuffer.usageincludes theGPUBufferUsage.COPY_DSTflag. offsetandsizeare both multiples of 4.- The
buffer'sGPUBuffer.sizeis greater than or equal tooffset+size.
Examples
// ...
const buffer = device.createBuffer({
size: 1000,
usage: GPUBufferUsage.MAP_READ | GPUBufferUsage.COPY_DST,
});
// Later on
const commandBuffer = device.createCommandEncoder();
commandEncoder.clearBuffer(buffer);
// ...
Specifications
| Specification |
|---|
| WebGPU # dom-gpucommandencoder-clearbuffer |
Browser compatibility
BCD tables only load in the browser
See also
- The WebGPU API