GPUComputePipeline

可用性有限

此特性不是基线特性,因为它在一些最广泛使用的浏览器中不起作用。

安全上下文: 此功能仅在安全上下文(HTTPS)中可用,且支持此功能的浏览器数量有限。

注意:此功能在 Web Workers 中可用。

GPUComputePipeline 接口是 WebGPU API 的一部分,它表示一个控制计算着色器阶段的管道,并可用于 GPUComputePassEncoder

GPUComputePipeline 对象实例可以通过 GPUDevice.createComputePipeline()GPUDevice.createComputePipelineAsync() 方法创建。

实例属性

label

一个字符串,提供可用于识别对象的标签,例如在 GPUError 消息或控制台警告中。

实例方法

getBindGroupLayout()

返回给定索引的管道的 GPUBindGroupLayout 对象(即,包含在原始的 GPUDevice.createComputePipeline()GPUDevice.createComputePipelineAsync() 调用中的管道布局)。

示例

注意:WebGPU 示例 提供了更多示例。

基本示例

我们的 基本计算演示 展示了一个流程:

js
// …

const bindGroupLayout = device.createBindGroupLayout({
  entries: [
    {
      binding: 0,
      visibility: GPUShaderStage.COMPUTE,
      buffer: {
        type: "storage",
      },
    },
  ],
});

const computePipeline = device.createComputePipeline({
  layout: device.createPipelineLayout({
    bindGroupLayouts: [bindGroupLayout],
  }),
  compute: {
    module: shaderModule,
    entryPoint: "main",
  },
});

// …

规范

规范
WebGPU
# gpucomputepipeline

浏览器兼容性

另见