glDispatchComputeIndirect launches one or more compute work groups using parameters stored in the buffer object currently bound to the GL_DISPATCH_INDIRECT_BUFFER target. Each work group is processed by the active program object for the compute shader stage. While the individual shader invocations within a work group are executed as a unit, work groups are executed completely independently and in unspecified order. indirect contains the offset into the data store of the buffer object bound to the GL_DISPATCH_INDIRECT_BUFFER target at which the parameters are stored. The parameters addressed by indirect are packed a structure, which takes the form (in C):
Unlike glDispatchCompute, no error is generated if any of the num_groups_x, num_groups_y or num_groups_z members of the DispatchIndirectCommand is larger than the value of GL_MAX_COMPUTE_WORK_GROUP_COUNT for the corresponding dimension. In such circumstances, behavior is undefined and may lead to application termination.
glDispatchComputeIndirect: man4/glDispatchComputeIndirect.xml
glDispatchComputeIndirect launches one or more compute work groups using parameters stored in the buffer object currently bound to the GL_DISPATCH_INDIRECT_BUFFER target. Each work group is processed by the active program object for the compute shader stage. While the individual shader invocations within a work group are executed as a unit, work groups are executed completely independently and in unspecified order. indirect contains the offset into the data store of the buffer object bound to the GL_DISPATCH_INDIRECT_BUFFER target at which the parameters are stored. The parameters addressed by indirect are packed a structure, which takes the form (in C):
A call to glDispatchComputeIndirect is equivalent, assuming no errors are generated, to:
Unlike glDispatchCompute, no error is generated if any of the num_groups_x, num_groups_y or num_groups_z members of the DispatchIndirectCommand is larger than the value of GL_MAX_COMPUTE_WORK_GROUP_COUNT for the corresponding dimension. In such circumstances, behavior is undefined and may lead to application termination.