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