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
descriptorOptional-
An object containing the following properties:
labelOptional-
A string providing a label that can be used to identify the object, for example in
GPUErrormessages 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
GPURenderBundleEncoderis 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