WEBGL_debug_renderer_info Erweiterung
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since April 2017.
Die WEBGL_debug_renderer_info
Erweiterung ist Teil der WebGL API und stellt zwei Konstanten mit Informationen über den Grafiktreiber für Debugging-Zwecke bereit.
Abhängig von den Datenschutzeinstellungen des Browsers könnte diese Erweiterung nur in privilegierten Kontexten verfügbar sein. Im Allgemeinen sollten die Informationen über den Grafiktreiber nur in Ausnahmefällen genutzt werden, um Ihre WebGL-Inhalte zu optimieren oder um Probleme mit der GPU zu debuggen. Die Methode WebGLRenderingContext.getParameter()
kann Ihnen helfen, zu erkennen, welche Funktionen unterstützt werden, und das Attribut failIfMajorPerformanceCaveat
ermöglicht Ihnen zu steuern, ob ein Kontext überhaupt zurückgegeben werden soll, wenn die Leistung drastisch langsam wäre.
WebGL-Erweiterungen sind verfügbar über die Methode WebGLRenderingContext.getExtension()
. Für weitere Informationen siehe auch Verwendung von Erweiterungen im WebGL-Tutorial.
Hinweis: Abhängig von den Datenschutzeinstellungen des Browsers könnte diese Erweiterung nur in privilegierten Kontexten verfügbar oder überhaupt nicht funktionsfähig sein. In Firefox wird diese Erweiterung deaktiviert, wenn privacy.resistFingerprinting
auf true
gesetzt ist.
Diese Erweiterung ist sowohl für WebGL1 als auch für WebGL2 Kontexte verfügbar.
Konstanten
- ext.UNMASKED_VENDOR_WEBGL
-
Hersteller-String des Grafiktreibers.
- ext.UNMASKED_RENDERER_WEBGL
-
Renderer-String des Grafiktreibers.
Beispiele
Mit Hilfe dieser Erweiterung können privilegierte Kontexte Debug-Informationen über den Grafiktreiber des Benutzers abrufen:
const canvas = document.getElementById("canvas");
const gl = canvas.getContext("webgl");
const debugInfo = gl.getExtension("WEBGL_debug_renderer_info");
const vendor = gl.getParameter(debugInfo.UNMASKED_VENDOR_WEBGL);
const renderer = gl.getParameter(debugInfo.UNMASKED_RENDERER_WEBGL);
console.log(vendor);
console.log(renderer);
Spezifikationen
Specification |
---|
WebGL WEBGL_debug_renderer_info Khronos Ratified Extension Specification |
Browser-Kompatibilität
BCD tables only load in the browser