Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten. Erfahre mehr über dieses Experiment.

View in English Always switch to English

GPUPipelineError

Eingeschränkt verfügbar

Diese Funktion ist nicht Baseline, da sie in einigen der am weitesten verbreiteten Browser nicht funktioniert.

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

Spezifikation
WebGPU
# gpupipelineerror

Browser-Kompatibilität

Siehe auch