From OpenGL Wiki
Revision as of 10:03, 15 August 2013 by AlfonsesCategoryBot (talk | contribs) (Bot: Adding better formatting.)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search
Core in version 4.6
Core since version 3.3
Core ARB extension ARB_timer_query

glQueryCounter: record the GL time into a query object after all previous commands have reached the GL server but have not yet necessarily executed.

Function Definition

 void glQueryCounter(GLuint id​, GLenum target​);
Specify the name of a query object into which to record the GL time.
Specify the counter to query. target​ must be GL_TIMESTAMP.


glQueryCounter causes the GL to record the current time into the query object named id​. target​ must be GL_TIMESTAMP. The time is recorded after all previous commands on the GL client and server state and the framebuffer have been fully realized. When the time is recorded, the query result for that object is marked available. glQueryCounter timer queries can be used within a glBeginQuery / glEndQuery block where the target is GL_TIME_ELAPSED and it does not affect the result of that query object.


glQueryCounter is available only if the GL version is 3.3 or higher.


GL_INVALID_OPERATION is generated if id​ is the name of a query object that is already in use within a glBeginQuery / glEndQuery block.

GL_INVALID_VALUE is generated if id​ is not the name of a query object returned from a previous call to glGenQueries.

GL_INVALID_ENUM is generated if target​ is not GL_TIMESTAMP.

See Also

glGenQueries, glGetQueryObject


Copyright © 2010 Khronos Group. This material may be distributed subject to the terms and conditions set forth in the Open Publication License, v 1.0, 8 June 1999.