GPURenderBundleEncoder: finish() 方法
GPURenderBundleEncoder
接口的 **finish()
** 方法完成当前渲染包命令序列的录制,并返回一个 GPURenderBundle
对象,该对象可以传递到 GPURenderPassEncoder.executeBundles()
调用中,以在特定的渲染通道中执行这些命令。
语法
js
finish(descriptor)
参数
descriptor
可选-
包含以下属性的对象
返回值
一个 GPURenderBundle
对象实例。
验证
调用 finish()
时必须满足以下条件,否则将生成 GPUValidationError
,并且 GPURenderBundleEncoder
将变得无效
GPURenderBundleEncoder
是打开的(即尚未通过finish()
调用结束)。- 当前渲染通道的调试堆栈为空(即当前没有打开渲染通道调试组,如
pushDebugGroup()
打开的那样)。
示例
js
const renderBundleEncoder = device.createRenderBundleEncoder({
colorFormats: [presentationFormat],
});
recordRenderPass(renderBundleEncoder);
const renderBundle = renderBundleEncoder.finish();
以上代码片段取自 WebGPU 示例 Animometer 示例。
规范
规范 |
---|
WebGPU # dom-gpurenderbundleencoder-finish |
浏览器兼容性
BCD 表格仅在启用 JavaScript 的浏览器中加载。