GPUValidationError
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 GPUValidationError
-Schnittstelle der WebGPU API beschreibt einen Anwendungsfehler, der darauf hinweist, dass eine Operation die Validierungsbeschränkungen der WebGPU API nicht bestanden hat.
Sie stellt einen der Fehlertypen dar, die von GPUDevice.popErrorScope
und dem uncapturederror
-Ereignis angezeigt werden.
Validierungsfehler treten auf, wann immer ungültige Eingaben in einem WebGPU-Aufruf gegeben werden. Diese sind konsistent, vorhersagbar und sollten nicht auftreten, sofern Ihre App gut aufgebaut ist. Sie werden in gleicher Weise auf jedem Gerät auftreten, auf dem Ihr Code ausgeführt wird, sodass Sie wahrscheinlich die meiste Zeit keine direkte Beobachtung benötigen, sobald Sie alle Fehler, die während der Entwicklung auftreten, behoben haben. Eine Ausnahme von dieser Regel ist, wenn Sie vom Benutzer bereitgestellte Assets, Shader usw. verwenden, in diesem Fall kann es hilfreich sein, auf Validierungsfehler während des Ladevorgangs zu achten.
Hinweis: Wir haben versucht, nützliche Informationen bereitzustellen, die Ihnen helfen zu verstehen, warum Validierungsfehler in Ihrem WebGPU-Code auftreten, in "Validierungs"-Abschnitten, wo dies angebracht ist, die Kriterien auflisten, die erfüllt werden müssen, um Validierungsfehler zu vermeiden. Siehe zum Beispiel den GPUDevice.createBindGroup()
Validierungsabschnitt.
Konstruktor
GPUValidationError()
Experimentell-
Erstellt eine neue Instanz des
GPUValidationError
-Objekts.
Instanz-Eigenschaften
Beispiele
Das folgende Beispiel verwendet einen Fehlerbereich, um einen vermuteten Validierungsfehler zu erfassen und protokolliert ihn in der Konsole.
device.pushErrorScope("validation");
let sampler = device.createSampler({
maxAnisotropy: 0, // Invalid, maxAnisotropy must be at least 1.
});
device.popErrorScope().then((error) => {
if (error) {
// error is a GPUValidationError object instance
sampler = null;
console.error(`An error occurred while creating sampler: ${error.message}`);
}
});
Spezifikationen
Specification |
---|
WebGPU # gpuvalidationerror |
Browser-Kompatibilität
BCD tables only load in the browser