
Indexing Multiple
Vertex Arrays
Arnaud Masserann
26.1 Introduction
One of OpenGL’s features is vertex buffer object (VBO) indexing, which allows de-
velopers to reuse a single vertex in several primitives. Since vertex attributes don’t
need to be duplicated, indexing saves memory and bandwidth. Given that the GPU
is often memory-bound, most of the time we can get extra speed with indexing.
Indexing requires having a single index for positions, texture coordinates, nor-
mals, and so on. Unfortunately, this is not how many 3D file formats work: for
instance, COLLADA has different indices for each vertex attribute. This is problem-
atic in asset pipelines, ...