webgl extension
WEBGL_debug_renderer_info extension
The WEBGL_debug_renderer_info extension is part of the WebGL API and exposes two constants with information about the graphics driver for debugging purposes.
Depending on the privacy settings of the browser, this extension might only be available to privileged contexts. Generally, the graphics driver information should only be used in edge cases to optimize your WebGL content or to debug GPU problems. The getParameter() method can help you to detect which features are supported and the failIfMajorPerformanceCaveat context attribute lets you control if a context should be returned at all, if the performance would be dramatically slow.
WebGL extensions are available using the getExtension() method. For more information, see also Using Extensions in the WebGL tutorial.
[!NOTE] Depending on the privacy settings of the browser, this extension might only be available to privileged contexts or not work at all. In Firefox, if
privacy.resistFingerprintingis set totrue, this extensions is disabled.This extension is available to both,
WebGL1andWebGL2contexts.
Constants
- ext.UNMASKED_VENDOR_WEBGL
- : Vendor string of the graphics driver.
- ext.UNMASKED_RENDERER_WEBGL
- : Renderer string of the graphics driver.
Examples
With the help of this extension, privileged contexts are able to retrieve debugging information about the user’s graphic driver:
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);