GPURenderBundleEncoder: finish() method
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
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 a finish()
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
const renderBundleEncoder = device.createRenderBundleEncoder({
colorFormats: [presentationFormat],
});
recordRenderPass(renderBundleEncoder);
const renderBundle = renderBundleEncoder.finish();
The above snippet is taken from the WebGPU Samples Animometer example.
Specifications
Browser compatibility
|
Desktop |
Mobile |
|
Chrome |
Edge |
Firefox |
Internet Explorer |
Opera |
Safari |
WebView Android |
Chrome Android |
Firefox for Android |
Opera Android |
Safari on IOS |
Samsung Internet |
finish |
113Currently supported on ChromeOS, macOS, and Windows only.
|
113Currently supported on ChromeOS, macOS, and Windows only.
|
previewCurrently supported on Linux and Windows only.
|
No |
99Currently supported on ChromeOS, macOS, and Windows only.
|
No |
No |
No |
No |
No |
No |
No |
See also