В режиме GL_TRIANGLES
ему нужно 3 вершины для каждого треугольника, поэтому он будет тянуть по 3 индекса одновременно (поэтому он будет рисовать два треугольника с индексами 1,2,3 и 4,5,6).
Различные цифры применяются, если у вас есть смежность или вы нарисовали треугольник полоса , конечно.
Кроме того, поскольку вы упомянули, что импортируете файл OBJ, учтите, что в файле OBJ могут быть различные индексы для вершин, координат текстуры и / или нормалей.
Это не ошибка, а особенность. Это допустимо в OBJ, и многие экспортеры делают это, когда поверхности имеют гладкое затенение (то есть две грани имеют общую нормали) для экономии места.
Вы должны составить список уникальных вершин, каждая из которых имеет свою собственную нормаль, texcoord и т. Д. И использовать для них индексы.