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 in secure contexts (HTTPS), in some or all supporting browsers.
Note: This feature is available in Web Workers.
The GPUPipelineLayout interface of the WebGPU API defines the GPUBindGroupLayouts used by a pipeline. GPUBindGroups used with the pipeline during command encoding must have compatible GPUBindGroupLayouts.
A GPUPipelineLayout object instance is created using the GPUDevice.createPipelineLayout() method.
Instance properties
Examples
Note: The WebGPU 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
Loading…
See also
- The WebGPU API