Summary: The WEBGL_debug_renderer_info extension allows for querying which driver (and commonly GPU) a WebGL context is running on. Specifically, it allows querying the RENDERER and VENDOR strings of the underlying OpenGL driver.
By default, RENDERER and VENDOR queries in WebGL yield safe but useless values. (For example, Gecko returns "Mozilla"/"Mozilla" for RENDERER/VENDOR) Queries to UNMASKED_RENDERER_WEBGL and UNMASKED_VENDOR_WEBGL yield the RENDERER and VENDOR string of the underlying graphics driver. These values are combined to form the "WebGL Renderer" field in about:support. On my system, these are: * UNMASKED_RENDERER_WEBGL: "ANGLE (NVIDIA GeForce GT 750M Direct3D11 vs_5_0 ps_5_0)" * UNMASKED_VENDOR_WEBGL: "Google Inc." [1] Bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1171228 Link To Standard: https://www.khronos.org/registry/webgl/extensions/WEBGL_debug_renderer_info/ Do other browser engines implement this: Chrome and IE implement this; Safari does not. Platform Coverage: All platforms. Current Target Release: Firefox 41 Related Preferences: * "webgl.disable-debug-renderer-info" (default: false): Disable this extension for unprivileged content. * "webgl.renderer-string-override" (default: ""): Overrides UNMASKED_RENDERER_WEBGL query result when non-empty. * "webgl.vendor-string-override" (default: ""): Overrides UNMASKED_VENDOR_WEBGL query result when non-empty. Security and Privacy Concerns: * Traditional user-agent sniffing concerns. (Known antipattern) * This info includes what GPU is being used, which may contribute to marketing profiles. * This info adds easily-accessible bits of entropy that improve fingerprinting, reducing privacy. (Panopticlick and others have demonstrated that this is already very effective) Web Developer Use-Cases: * Sites can more easily and immediately identify and address concerns caused by specific hardware or drivers. Currently, apps must unconditionally workaround an issue until we can ship a fix via browser updates.This can mean performance degradation for unaffected machines for, sometimes for weeks. * Sites can collate and cross-reference drivers and hardware when tracking issues both user-reported and auto-detected, which both helps sites identify problematic hardware, and helps browsers fix these issues in turn. * This allows sites to offer better estimates of performance, and offer reasonable defaults for quality settings. [1] On Windows, we use ANGLE as an intermediary driver on top of D3D, hence the VENDOR string being "Google, Inc." and not "NVIDIA" here. _______________________________________________ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform