Limited availability
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 createPipelineLayout()
method of the GPUDevice
interface creates a GPUPipelineLayout
that defines the GPUBindGroupLayout
s used by a pipeline. GPUBindGroup
s used with the pipeline during command encoding must have compatible GPUBindGroupLayout
s.
createPipelineLayout(descriptor)
Parameters
descriptor
An object containing the following properties:
bindGroupLayouts
An array of GPUBindGroupLayout
objects (which are in turn created via calls to GPUDevice.createBindGroupLayout()
). Each one corresponds to a @group
attribute in the shader code contained in the GPUShaderModule
used in a related pipeline.
label
Optional
A string providing a label that can be used to identify the object, for example in GPUError
messages or console warnings.
A GPUPipelineLayout
object instance.
The following criteria must be met when calling createPipelineLayout()
, otherwise a GPUValidationError
is generated and an invalid GPUPipelineLayout
object is returned:
GPUBindGroupLayout
objects in bindGroupLayouts
are valid.GPUBindGroupLayout
objects in bindGroupLayouts
is less than the GPUDevice
's maxBindGroups
limit.Note: The WebGPU samples feature many more examples.
Multiple bind group layouts, bind group, and pipeline layoutThe following snippet:
GPUBindGroupLayout
that describes a binding with a buffer, a texture, and a sampler.GPUPipelineLayout
based on the GPUBindGroupLayout
.// â¦
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 Browser compatibility See also
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4