VBO
A Vertex Buffer Object (VBO) is an OpenGL object used to store vertex data in GPU memory to speed up rendering. VBOs were introduced with the OpenGL 1.5 core specification, following the ARB_vertex_buffer_object extension. By keeping vertex data on the GPU, VBOs reduce CPU‑to‑GPU data transfers and enable efficient reuse of data across many frames.
VBOs are created with glGenBuffers, bound with glBindBuffer, and filled with glBufferData or glBufferSubData. The GL_ARRAY_BUFFER
Data usage hints specify how the buffer will be updated: GL_STATIC_DRAW for rarely changed data, GL_DYNAMIC_DRAW
Performance considerations include lower CPU–GPU bandwidth, improved memory locality, and better parallelism. The layout choice, interleaved
See also OpenGL Vertex Array Objects and the broader OpenGL rendering pipeline. VBOs are a central component