GPURenderBundleEncoder: finish() method
Experimental: This is an experimental technology
Check the Browser compatibility table carefully before using this in production.
The finish()
method of the
GPURenderBundleEncoder
interface completes recording of the current render bundle command sequence, returning a GPURenderBundle
object that can be passed into a GPURenderPassEncoder.executeBundles()
call to execute those commands in a specific render pass.
Syntax
js
finish(descriptor)
Parameters
descriptor
Optional-
An object containing the following properties:
label
Optional-
A string providing a label that can be used to identify the object, for example in
GPUError
messages or console warnings.
Return value
A GPURenderBundle
object instance.
Validation
The following criteria must be met when calling finish()
, otherwise a GPUValidationError
is generated and the GPURenderBundleEncoder
becomes invalid:
- The
GPURenderBundleEncoder
is open (i.e. not already ended via afinish()
call). - The debug stack for the current render pass is empty (i.e. no render pass debug group is currently open, as opened by
pushDebugGroup()
).
Examples
js
const renderBundleEncoder = device.createRenderBundleEncoder({
colorFormats: [presentationFormat],
});
recordRenderPass(renderBundleEncoder);
const renderBundle = renderBundleEncoder.finish();
The above snippet is taken from the WebGPU Samples Animometer example.
Specifications
Specification |
---|
WebGPU # dom-gpurenderbundleencoder-finish |
Browser compatibility
BCD tables only load in the browser
See also
- The WebGPU API