GPUComputePipeline
Limited availability
This feature is not Baseline because it does not work in some of the most widely-used browsers.
Sicherer Kontext: Diese Funktion ist nur in sicheren Kontexten (HTTPS) in einigen oder allen unterstützenden Browsern verfügbar.
Hinweis: Diese Funktion ist in Web Workers verfügbar.
Das GPUComputePipeline
Interface der WebGPU API repräsentiert eine Pipeline, die die Compute-Shader-Stufe steuert und im GPUComputePassEncoder
verwendet werden kann.
Ein GPUComputePipeline
Objekt kann mit den Methoden GPUDevice.createComputePipeline()
oder GPUDevice.createComputePipelineAsync()
erstellt werden.
Instanz-Eigenschaften
Instanz-Methoden
getBindGroupLayout()
-
Gibt das
GPUBindGroupLayout
Objekt der Pipeline mit dem angegebenen Index zurück (d.h. enthalten im ursprünglichen Aufruf vonGPUDevice.createComputePipeline()
oderGPUDevice.createComputePipelineAsync()
zur Pipeline-Erstellung).
Beispiele
Hinweis: Die WebGPU-Beispiele enthalten noch viele weitere Beispiele.
Einfache Beispiel
Unser einfaches Compute-Demo zeigt einen Prozess von:
- Erstellen eines Bind Group Layouts mit
GPUDevice.createBindGroupLayout()
. - Einspeisen des
bindGroupLayout
inGPUDevice.createPipelineLayout()
zur Erstellung einesGPUPipelineLayout
. - Verwendung dieses Wertes direkt in einem
createComputePipeline()
Aufruf zur Erstellung einerGPUComputePipeline
.
// …
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",
},
});
// …
Spezifikationen
Specification |
---|
WebGPU # gpucomputepipeline |
Browser-Kompatibilität
Siehe auch
- Die WebGPU API