GPUPipelineError

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 GPUPipelineError-Interface der WebGPU API beschreibt einen Pipeline-Fehler. Dies ist der Wert, den man erhält, wenn ein von einem Promise zurückgegebenes Versprechen von GPUDevice.createComputePipelineAsync() oder GPUDevice.createRenderPipelineAsync() abgelehnt wird.

DOMException GPUPipelineError

Konstruktor

GPUPipelineError()

Erstellt eine neue Instanz eines GPUPipelineError-Objekts.

Instanz-Eigenschaften

Erbt Eigenschaften von seinem Elternteil, DOMException.

reason Schreibgeschützt

Ein enumerierter Wert, der den Grund für das Fehlschlagen der Pipeline-Erstellung in maschinenlesbarer Form definiert.

Beispiele

Im folgenden Codebeispiel versuchen wir, eine GPUComputePipeline unter Verwendung von GPUDevice.createComputePipelineAsync() zu erstellen. Allerdings haben wir unseren Compute-Pipeline-entryPoint falsch als "maijn" (es sollte "main" sein) buchstabiert, wodurch die Pipeline-Erstellung fehlschlägt, und unser catch-Block gibt den resultierenden Grund und die Fehlermeldung in der Konsole aus.

js
// …

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 angegebene reason "Validation", und die message lautet "Entry point "maijn" doesn't exist in the shader module [ShaderModule]."

Spezifikationen

Specification
WebGPU
# gpupipelineerror

Browser-Kompatibilität

Siehe auch