WebGL
Khronos
 

WebGL WEBGL_debug_renderer_info Khronos Ratified Extension Specification

Name

WEBGL_debug_renderer_info

Contact

zmo@chromium.org

Contributors

Members of the WebGL working group

Version

Last modified date: May 15, 2013
Revision: 6

Number

WebGL extension #6

Dependencies

Written against the WebGL API 1.0 specification.

Overview

WebGL implementations might mask the RENDERER and VENDOR strings of the underlying graphics driver for privacy reasons. This extension exposes new tokens to query this information in a guaranteed manner for debugging purposes.

IDL

interface WEBGL_debug_renderer_info {

      const GLenum UNMASKED_VENDOR_WEBGL            = 0x9245;
      const GLenum UNMASKED_RENDERER_WEBGL          = 0x9246;

};
  

New Tokens

any getParameter(GLenum pname)
Two new enums UNMASKED_VENDOR_WEBGL and UNMASKED_RENDERER_WEBGL are accepted by pname parameter in getParameter().
pnamereturned type
UNMASKED_VENDOR_WEBGLDOMString
UNMASKED_RENDERER_WEBGLDOMString

The following pname arguments return a string describing some aspect of the underlying graphics driver.
UNMASKED_VENDOR_WEBGLReturn the VENDOR string of the underlying graphics driver.
UNMASKED_RENDERER_WEBGLReturn the RENDERER string of the underlying graphics driver.

Security Considerations

VENDOR and RENDERER strings from the underlying graphics driver could be used to identify a user's GPU, which in turn could be used to identify a unique user. Therefore, this extension has privacy implications and MUST NOT be available (see getSupportedExtensions()) to regular web content. The extension shall be available only to content determined to be privileged by some user agent specific means.

Issues

1) What enum values should be used for UNMASKED_VENDOR_WEBGL and UNMASKED_RENDERER_WEBGL?

Revision History

Revision 1, 2011/10/03

Revision 2, 2011/10/12

Revision 3, 2011/10/18

Revision 4, 2011/12/07

Revision 5, 2012/01/03

Revision 6, 2013/05/15