Формат предназначен для поддержки чередующихся атрибутов вершин, первоначально из WebGL (в glTF 1.0), но теперь в более широком смысле для графических API (в glTF 2.0).
Например, POSITION
данные могут бытьvec3
из FLOAT
, но TEXCOORD_0
данные могут иметь значение vec2
из FLOAT
, и даже могут быть пользовательские атрибуты разных типов, все чередующиеся в одном буфере графического процессора.
ТакBufferView
определяет данный шаг байтов, и отдельные средства доступа к этому представлению могут иметь разные типы и количества, но все они будут использовать один и тот же шаг байтов.
Вы не обязаны чередовать, конечно, ноФормат предназначен для того, чтобы разрешить это и обеспечить совместное использование шага байтов, когда это происходит.
Вот схема из раздела Чередование данных учебника по glTF.Здесь немного мало, но вы можете кликнуть для увеличения.В этом примере есть два метода доступа, один для POSITION и один для NORMAL, совместно использующих один BufferView.