Merge Chromium + Blink git repositories
[chromium-blink-merge.git] / gpu / GLES2 / extensions / CHROMIUM / CHROMIUM_request_extension.txt
blobcbc2aa4ebf524914de97a61395aacdea06d1e010
1 Name
3     CHROMIUM_request_extension
5 Name Strings
7     GL_CHROMIUM_request_extension
9 Version
11     Last Modifed Date: July 22, 2011
13 Dependencies
15     OpenGL ES 2.0 is required.
17 Overview
19     This extension is for WebGL only. In some implemenations of OpenGL ES 2.0,
20     in particular the Chromium implementation, it is possible to create an
21     OpenGL context and request that most extensions be disabled. From that
22     point, this extension allows extensions to then be selectively enabled.
24     WebGL requires the base OpenGL ES 2.0 with NO extensions. So for example,
25     if an OpenGL ES 2.0 implemention exposed the extension OES_texture_npot, the
26     WebGL implementation would have to make it appear as though that extension
27     does not exist. For Chromium WebGL OpenGL contexts, Chromium requests a
28     context with no extensions. It then queries which extensions exist. If
29     OES_texture_npot does NOT exist then WebGL can decide to not do the extra
30     work required to emulate it not existing.
32     Subsequently, if the user calls
33     WebGLRenderingContext.getExtension("WEBGL_texture_npot"), assuming such an
34     extension exists, the WebGL implementation can call this extension to turn
35     on OES_texture_npot. After calling RequestExtensionCHROMIUM you must call
36     GetString(GL_EXTENSIONS) in order to find out if the extension was actually
37     enabled.
39     Note: This extension really has no meaning outside of WebGL. By default, all
40     supported extensions are enabled.
42 Issues
45 New Tokens
47     None
49 New Procedures and Functions
51     RequestExtensionCHROMIUM(const GLchar *extension)
53     <extension> is a null terminated string of the extension you wish to enable.
54     For example "OES_texture_npot".
56 Errors
58     None.
60 New State
62     None.
64 Revision History
66     7/22/2011    Documented the extension