GPUBindGroup
Limited availability
This feature is not Baseline because it does not work in some of the most widely-used browsers.
Experimental: This is an experimental technology
Check the Browser compatibility table carefully before using this in production.
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 GPUBindGroup
interface of the WebGPU API is based on a GPUBindGroupLayout
and defines a set of resources to be bound together in a group and how those resources are used in shader stages.
A GPUBindGroup
object instance is created using the GPUDevice.createBindGroup()
method.
Instance properties
Examples
Note: The WebGPU samples feature many more examples.
Basic example
Our basic compute demo shows an example of creating a bind group layout and then using that as a template when creating a bind group.
// ...
const bindGroupLayout = device.createBindGroupLayout({
entries: [
{
binding: 0,
visibility: GPUShaderStage.COMPUTE,
buffer: {
type: "storage",
},
},
],
});
const bindGroup = device.createBindGroup({
layout: bindGroupLayout,
entries: [
{
binding: 0,
resource: {
buffer: output,
},
},
],
});
// ...
Specifications
Specification |
---|
WebGPU # gpubindgroup |
Browser compatibility
BCD tables only load in the browser
See also
- The WebGPU API