EXT_disjoint_timer_query: getQueryObjectEXT() method

Limited availability

This feature is not Baseline because it does not work in some of the most widely-used browsers.

The EXT_disjoint_timer_query.getQueryObjectEXT() method of the WebGL API returns the state of a query object.

Syntax

js
getQueryObjectEXT(query, pname)

Parameters

query

A WebGLQuery object from which to return information.

pname

A GLenum specifying which information to return. Must be ext.QUERY_RESULT_EXT or ext.QUERY_RESULT_AVAILABLE_EXT.

Return value

Depends on pname:

  • If pname is ext.QUERY_RESULT_EXT: A GLuint64EXT containing the query result.
  • If pname is ext.QUERY_RESULT_AVAILABLE_EXT: A GLboolean indicating whether or not a query result is available.

Examples

js
const ext = gl.getExtension("EXT_disjoint_timer_query");
const query = ext.createQueryEXT();
ext.beginQueryEXT(ext.TIME_ELAPSED_EXT, query);

// Draw
ext.endQueryEXT(ext.TIME_ELAPSED_EXT);

// At some point in the future, after returning control to the browser
const available = ext.getQueryObjectEXT(query, ext.QUERY_RESULT_AVAILABLE_EXT);
const disjoint = gl.getParameter(ext.GPU_DISJOINT_EXT);

if (available && !disjoint) {
  // See how much time the rendering of the object took in nanoseconds.
  const timeElapsed = ext.getQueryObjectEXT(query, ext.QUERY_RESULT_EXT);
}

Specifications

Specification
WebGL EXT_disjoint_timer_query Extension Specification

Browser compatibility

desktopmobile
Chrome
Edge
Firefox
Opera
Safari
Chrome Android
Firefox for Android
Opera Android
Safari on iOS
Samsung Internet
WebView Android
WebView on iOS
getQueryObjectEXT

See also