The EXT_disjoint_timer_query extension is part of the WebGL API and provides a way to measure the duration of a set of GL commands, without stalling the rendering pipeline.
WebGL extensions are available using the WebGLRenderingContext.getExtension()
method. For more information, see also Using Extensions in the WebGL tutorial.
Availability: This extension should be available in WebGL1 contexts only. EXT_disjoint_timer_query_webgl2
is available in WebGL 2 contexts .
In WebGL 2, the getQueryObject
was renamed to getQueryParameter
.
In WebGL 2, other queries (such as occlusion queries and primitive queries) are possible using WebGLQuery
objects.
This extension exposes a new type:
This extension exposes seven new constants.
ext.QUERY_COUNTER_BITS_EXT
GLint
indicating the number of bits used to hold the query result for the given target.ext.CURRENT_QUERY_EXT
WebGLQuery
object, which is the currently active query for the given target.ext.QUERY_RESULT_EXT
GLuint64EXT
containing the query result.ext.QUERY_RESULT_AVAILABLE_EXT
GLboolean
indicating whether or not a query result is available.ext.TIME_ELAPSED_EXT
ext.TIMESTAMP_EXT
ext.GPU_DISJOINT_EXT
GLboolean
indicating whether or not the GPU performed any disjoint operation.This extension exposes eight new methods.
ext.createQueryEXT()
Creates a new WebGLQuery
.
ext.deleteQueryEXT()
Deletes a given WebGLQuery
.
ext.isQueryEXT()
Returns true
if a given object is a WebGLQuery
.
ext.beginQueryEXT()
beginQueryEXT
have been fully executed.ext.endQueryEXT()
endQueryEXT
have been fully executed.ext.queryCounterEXT()
Records the current time into the corresponding query object.
ext.getQueryEXT()
ext.getQueryObjectEXT()
var ext = gl.getExtension('EXT_disjoint_timer_query');
Specification | Status | Comment |
---|---|---|
EXT_disjoint_timer_query The definition of 'EXT_disjoint_timer_query' in that specification. | Working Draft | Initial definition. |
Desktop | ||||||
---|---|---|---|---|---|---|
Chrome | Edge | Firefox | Internet Explorer | Opera | Safari | |
Basic support | 47 — 65
|
No | 51 — 63
|
? | ? | ? |
createQueryEXT |
47 — 65
|
No | 51 — 63
|
? | ? | ? |
deleteQueryEXT |
47 — 65
|
No | 51 — 63
|
? | ? | ? |
isQueryEXT |
47 — 65
|
No | 51 — 63
|
? | ? | ? |
beginQueryEXT |
47 — 65
|
No | 51 — 63
|
? | ? | ? |
endQueryEXT |
47 — 65
|
No | 51 — 63
|
? | ? | ? |
queryCounterEXT |
47 — 65
|
No | 51 — 63
|
? | ? | ? |
getQueryEXT |
47 — 65
|
No | 51 — 63
|
? | ? | ? |
getQueryObjectEXT |
47 — 65
|
No | 51 — 63
|
? | ? | ? |
Mobile | |||||||
---|---|---|---|---|---|---|---|
Android webview | Chrome for Android | Edge Mobile | Firefox for Android | Opera for Android | iOS Safari | Samsung Internet | |
Basic support | ? | 47 — 65
|
No | No | ? | ? | 5.0 |
createQueryEXT |
? | 47 — 65
|
No | No | ? | ? | 5.0 |
deleteQueryEXT |
? | 47 — 65
|
No | No | ? | ? | 5.0 |
isQueryEXT |
? | 47 — 65
|
No | No | ? | ? | 5.0 |
beginQueryEXT |
? | 47 — 65
|
No | No | ? | ? | 5.0 |
endQueryEXT |
? | 47 — 65
|
No | No | ? | ? | 5.0 |
queryCounterEXT |
? | 47 — 65
|
No | No | ? | ? | 5.0 |
getQueryEXT |
? | 47 — 65
|
No | No | ? | ? | 5.0 |
getQueryObjectEXT |
? | 47 — 65
|
No | No | ? | ? | 5.0 |
© 2005–2018 Mozilla Developer Network and individual contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/EXT_disjoint_timer_query