2011 Khronos Group
gl_InvocationID 3G
gl_InvocationID contains the invocation index of the current shader

## Declaration

`in int gl_InvocationID;`

## Description

In the tessellation control language, `gl_InvocationID` contains the index of the output patch vertex assigned to the shader invocation. It is assigned an integer value in the range [0, N-1] where N is the number of output patch vertices.

In the geometry language, `gl_InvocationID` identifies the invocation number assigned to the geometry shader invocation. It is assigned an integer value in the range [0, N-1] where N is the number of geometry shader invocations per primitive.

## Version Support

Variable | Version 1.10 | Version 1.20 | Version 1.30 | Version 1.40 | Version 1.50 | Version 3.30 | Version 4.00 | Version 4.10
--- | --- | --- | --- | --- | --- | --- | --- | ---
gl_InvocationID | - | - | - | - | Y 1 | Y 1 | Y | Y

[1] Versions 1.50 to 3.30 - geometry shaders only.

## See Also

gl_InstanceID

## Copyright

Copyright 2011 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. http://opencontent.org/openpub/.