GPUPipelineLayout
Limited availability
This feature is not Baseline because it does not work in some of the most widely-used browsers.
Secure context: This feature is available only insecure contexts (HTTPS), in some or allsupporting browsers.
Note: This feature is available inWeb Workers.
TheGPUPipelineLayout interface of theWebGPU API defines theGPUBindGroupLayouts used by a pipeline.GPUBindGroups used with the pipeline during command encoding must have compatibleGPUBindGroupLayouts.
AGPUPipelineLayout object instance is created using theGPUDevice.createPipelineLayout() method.
In this article
Instance properties
Examples
Note:TheWebGPU samples feature many more examples.
Basic pipeline layout example
The following snippet:
- Creates a
GPUBindGroupLayoutthat describes a binding with a buffer, a texture, and a sampler. - Creates a
GPUPipelineLayoutbased on theGPUBindGroupLayout.
js
// …const bindGroupLayout = device.createBindGroupLayout({ entries: [ { binding: 0, visibility: GPUShaderStage.VERTEX | GPUShaderStage.FRAGMENT, buffer: {}, }, { binding: 1, visibility: GPUShaderStage.FRAGMENT, texture: {}, }, { binding: 2, visibility: GPUShaderStage.FRAGMENT, sampler: {}, }, ],});const pipelineLayout = device.createPipelineLayout({ bindGroupLayouts: [bindGroupLayout],});// …Specifications
| Specification |
|---|
| WebGPU> # gpupipelinelayout> |
Browser compatibility
See also
- TheWebGPU API