W3cubDocs

/Web APIs

EXT_disjoint_timer_query extension

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.

Note: 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.

Types

This extension exposes a new type:

GLuint64EXT

Unsigned 64-bit integer number.

Constants

This extension exposes seven new constants.

ext.QUERY_COUNTER_BITS_EXT

A GLint indicating the number of bits used to hold the query result for the given target.

ext.CURRENT_QUERY_EXT

A WebGLQuery object, which is the currently active query for the given target.

ext.QUERY_RESULT_EXT

A GLuint64EXT containing the query result.

ext.QUERY_RESULT_AVAILABLE_EXT

A GLboolean indicating whether or not a query result is available.

ext.TIME_ELAPSED_EXT

Elapsed time (in nanoseconds).

ext.TIMESTAMP_EXT

The current time.

ext.GPU_DISJOINT_EXT

A GLboolean indicating whether or not the GPU performed any disjoint operation.

Instance methods

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 valid WebGLQuery.

ext.beginQueryEXT()

The timer starts when all commands prior to beginQueryEXT have been fully executed.

ext.endQueryEXT()

The timer stops when all commands prior to endQueryEXT have been fully executed.

ext.queryCounterEXT()

Records the current time into the corresponding query object.

ext.getQueryEXT()

Returns information about a query target.

ext.getQueryObjectEXT()

Return the state of a query object.

Examples

js

const ext = gl.getExtension("EXT_disjoint_timer_query");

Specifications

Browser compatibility

Desktop Mobile
Chrome Edge Firefox Internet Explorer Opera Safari WebView Android Chrome Android Firefox for Android Opera Android Safari on IOS Samsung Internet
EXT_disjoint_timer_query
70Only supported on macOS.
47–65Removed due to the GLitch exploit.
79Only supported on macOS.
51–59Removed due to the GLitch exploit.
No
57Only supported on macOS.
34–52Removed due to the GLitch exploit.
No
47–65Removed due to the GLitch exploit.
47–65Removed due to the GLitch exploit.
No
34–47Removed due to the GLitch exploit.
No
5.0–9.0Removed due to the GLitch exploit.
beginQueryEXT
70Only supported on macOS.
47–65Removed due to the GLitch exploit.
79Only supported on macOS.
51–59Removed due to the GLitch exploit.
No
57Only supported on macOS.
34–52Removed due to the GLitch exploit.
No
47–65Removed due to the GLitch exploit.
47–65Removed due to the GLitch exploit.
No
34–47Removed due to the GLitch exploit.
No
5.0–9.0Removed due to the GLitch exploit.
createQueryEXT
70Only supported on macOS.
47–65Removed due to the GLitch exploit.
79Only supported on macOS.
51–59Removed due to the GLitch exploit.
No
57Only supported on macOS.
34–52Removed due to the GLitch exploit.
No
47–65Removed due to the GLitch exploit.
47–65Removed due to the GLitch exploit.
No
34–47Removed due to the GLitch exploit.
No
5.0–9.0Removed due to the GLitch exploit.
deleteQueryEXT
70Only supported on macOS.
47–65Removed due to the GLitch exploit.
79Only supported on macOS.
51–59Removed due to the GLitch exploit.
No
57Only supported on macOS.
34–52Removed due to the GLitch exploit.
No
47–65Removed due to the GLitch exploit.
47–65Removed due to the GLitch exploit.
No
34–47Removed due to the GLitch exploit.
No
5.0–9.0Removed due to the GLitch exploit.
endQueryEXT
70Only supported on macOS.
47–65Removed due to the GLitch exploit.
79Only supported on macOS.
51–59Removed due to the GLitch exploit.
No
57Only supported on macOS.
34–52Removed due to the GLitch exploit.
No
47–65Removed due to the GLitch exploit.
47–65Removed due to the GLitch exploit.
No
34–47Removed due to the GLitch exploit.
No
5.0–9.0Removed due to the GLitch exploit.
getQueryEXT
70Only supported on macOS.
47–65Removed due to the GLitch exploit.
79Only supported on macOS.
51–59Removed due to the GLitch exploit.
No
57Only supported on macOS.
34–52Removed due to the GLitch exploit.
No
47–65Removed due to the GLitch exploit.
47–65Removed due to the GLitch exploit.
No
34–47Removed due to the GLitch exploit.
No
5.0–9.0Removed due to the GLitch exploit.
getQueryObjectEXT
70Only supported on macOS.
47–65Removed due to the GLitch exploit.
79Only supported on macOS.
51–59Removed due to the GLitch exploit.
No
57Only supported on macOS.
34–52Removed due to the GLitch exploit.
No
47–65Removed due to the GLitch exploit.
47–65Removed due to the GLitch exploit.
No
34–47Removed due to the GLitch exploit.
No
5.0–9.0Removed due to the GLitch exploit.
isQueryEXT
70Only supported on macOS.
47–65Removed due to the GLitch exploit.
79Only supported on macOS.
51–59Removed due to the GLitch exploit.
No
57Only supported on macOS.
34–52Removed due to the GLitch exploit.
No
47–65Removed due to the GLitch exploit.
47–65Removed due to the GLitch exploit.
No
34–47Removed due to the GLitch exploit.
No
5.0–9.0Removed due to the GLitch exploit.
queryCounterEXT
70Only supported on macOS.
47–65Removed due to the GLitch exploit.
79Only supported on macOS.
51–59Removed due to the GLitch exploit.
No
57Only supported on macOS.
34–52Removed due to the GLitch exploit.
No
47–65Removed due to the GLitch exploit.
47–65Removed due to the GLitch exploit.
No
34–47Removed due to the GLitch exploit.
No
5.0–9.0Removed due to the GLitch exploit.

See also

© 2005–2023 MDN 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