GPUPipelineError
Limited availability
This feature is not Baseline because it does not work in some of the most widely-used browsers.
Experimentell: Dies ist eine experimentelle Technologie
Überprüfen Sie die Browser-Kompatibilitätstabelle sorgfältig, bevor Sie diese produktiv verwenden.
Sicherer Kontext: Diese Funktion ist nur in sicheren Kontexten (HTTPS) in einigen oder allen unterstützenden Browsern verfügbar.
Hinweis: Dieses Feature ist verfügbar in Web Workers.
Die GPUPipelineError
-Schnittstelle der WebGPU API beschreibt einen Pipeline-Fehler. Dies ist der Wert, der empfangen wird, wenn ein von einem GPUDevice.createComputePipelineAsync()
oder GPUDevice.createRenderPipelineAsync()
zurückgegebenes Promise
abgelehnt wird.
Konstruktor
GPUPipelineError()
Experimentell-
Erstellt eine neue Instanz des
GPUPipelineError
-Objekts.
Instanz-Eigenschaften
Erbt Eigenschaften von seinem Elternobjekt, DOMException
.
reason
Experimentell Nur lesbar-
Ein enumerierter Wert, der den Grund für das Scheitern der Pipeline-Erstellung in einer maschinenlesbaren Weise definiert.
Beispiele
Im folgenden Beispiel versuchen wir, eine GPUComputePipeline
mit GPUDevice.createComputePipelineAsync()
zu erstellen. Wir haben jedoch unseren entryPoint
der Compute-Pipeline fälschlicherweise als "maijn"
geschrieben (es sollte "main"
sein), daher schlägt die Pipeline-Erstellung fehl, und unser catch
-Block gibt den resultierenden Grund und die Fehlermeldung in der Konsole aus.
// ...
let computePipeline;
try {
computePipeline = await device.createComputePipelineAsync({
layout: device.createPipelineLayout({
bindGroupLayouts: [bindGroupLayout],
}),
compute: {
module: shaderModule,
entryPoint: "maijn",
},
});
} catch (error) {
// error is a GPUPipelineError object instance
console.error(error.reason);
console.error(`Pipeline creation failed: ${error.message}`);
}
// ...
In diesem Fall ist der gegebene reason
"Validation"
und die message
lautet "Entry point "maijn" doesn't exist in the shader module [ShaderModule]."
Spezifikationen
Specification |
---|
WebGPU # gpupipelineerror |
Browser-Kompatibilität
BCD tables only load in the browser