GLPRIMITIVERESTARTIN(3G)

Bestie, this is GLPRIMITIVERESTARTIN(3G) β€” the glPrimitiveRestartIndex manual page, and the header slot literally has [FIXME: manual] energy, iykyk. Let's get into it πŸ’…βœ¨

πŸŽ€ NAME

glPrimitiveRestartIndex β€” specify the primitive restart index. That's the whole vibe: it picks the special index value, no cap.

πŸ’– C SPECIFICATION

void glPrimitiveRestartIndex(GLuint index);

🌸 PARAMETERS

  • index β€” specifies the value to be interpreted as the primitive restart index. That's it, bestie.

πŸ¦‹ DESCRIPTION

glPrimitiveRestartIndex specifies a vertex array element that is treated specially when primitive restarting is enabled. This is known as the primitive restart index. ✨

When one of the Draw* commands transfers a set of generic attribute array elements to the GL, if the index within the vertex arrays corresponding to that set is equal to the primitive restart index, then the GL does not process those elements as a vertex. Instead, it is as if the drawing command ended with the immediately preceding transfer, and another drawing command is immediately started with the same parameters, but only transferring the immediately following element through the end of the originally specified elements. Like a plot twist mid-draw 😭

When either glDrawElementsBaseVertex(), glDrawElementsInstancedBaseVertex() or glMultiDrawElementsBaseVertex() is used, the primitive restart comparison occurs before the basevertex offset is added to the array index. Important order-of-operations lore fr fr.

🧚 NOTES

glPrimitiveRestartIndex is available only if the GL version is 3.1 or greater. So that's the cutoff, bestie.

πŸ‘‘ VERSION SUPPORT

Under the Function / Feature Name row, glPrimitiveRestartIndex has these OpenGL Version vibes:

  • OpenGL 2.0 β€” -
  • OpenGL 2.1 β€” -
  • OpenGL 3.0 β€” -
  • OpenGL 3.1 β€” βœ”
  • OpenGL 3.2 β€” βœ”
  • OpenGL 3.3 β€” βœ”
  • OpenGL 4.0 β€” βœ”
  • OpenGL 4.1 β€” βœ”
  • OpenGL 4.2 β€” βœ”
  • OpenGL 4.3 β€” βœ”
  • OpenGL 4.4 β€” βœ”
  • OpenGL 4.5 β€” βœ”

🫢 SEE ALSO

  • glDrawArrays()
  • glDrawElements()
  • glDrawElementsBaseVertex()
  • glDrawElementsInstancedBaseVertex()

Copyright Β© 2010-2014 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/.

Copyright Β© 2010-2014 Khronos Group


Okay bestie, the source/version slot at the very end is literally [FIXME: source], dated 08/09/2021 β€” and that's the whole manual page, slay πŸ’…βœ¨

πŸ“¦ where this page comes from