GPUValidationError
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 GPUValidationError
-Interface der WebGPU API beschreibt einen Anwendungsfehler, der darauf hinweist, dass eine Operation die Validierungsbeschränkungen der WebGPU API nicht erfüllt hat.
Es repräsentiert einen der Fehlertypen, die durch GPUDevice.popErrorScope
und das uncapturederror
-Ereignis sichtbar werden.
Validierungsfehler treten auf, wenn ungültige Eingaben in einem WebGPU-Aufruf gegeben werden. Diese sind konsistent, vorhersehbar und sollten nicht auftreten, sofern Ihre Anwendung korrekt gestaltet ist. Sie werden auf jedem Gerät, auf dem Ihr Code läuft, auf die gleiche Weise auftreten; daher müssen Sie sie, wenn Sie alle während der Entwicklung auftretenden Fehler behoben haben, wahrscheinlich die meiste Zeit nicht direkt beobachten. Eine Ausnahme von dieser Regel besteht, wenn Sie von Benutzern bereitgestellte Assets, Shader usw. verwenden, in diesem Fall könnte es hilfreich sein, bei der Ladezeit auf Validierungsfehler zu achten.
Hinweis:
Wir haben versucht, nützliche Informationen bereitzustellen, um Ihnen zu helfen zu verstehen, warum Validierungsfehler in Ihrem WebGPU-Code auftreten, in "Validation"-Sektionen, wo es angemessen ist, die Kriterien aufführen, die erfüllt sein müssen, um Validierungsfehler zu vermeiden. Siehe zum Beispiel die GPUDevice.createBindGroup()
Validation-Sektion.
Konstruktor
GPUValidationError()
-
Erstellt eine neue Instanz eines
GPUValidationError
-Objekts.
Instanz-Eigenschaften
Beispiele
Das folgende Beispiel verwendet einen Fehlerbereich, um einen vermuteten Validierungsfehler zu erfassen und ihn in die Konsole zu protokollieren.
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 |