В настоящее время я пытаюсь настроить анимацию 2D-спрайтов с помощью OpenGL 4. Например, я разработал плавно вращающийся мяч с помощью Gimp. Там около 32 кадров (8 кадров в 4 ряда).
Я стремлюсь создать атлас спрайтов в 2D-текстуре и хранить данные спрайтов в буферах (VBO). Мой прямоугольник спрайта всегда будет одним и тем же (т.е. rect(0,0,32,32)) , но мои координаты текстуры будут меняться каждый раз, когда увеличивается индекс кадра.
Интересно, как изменить координаты.
- Поскольку тайлы спрайтов хранятся в нескольких строках, кажется, что ими сложно управлять в шейдере.
- Измените координату текстуры спрайта в буфере с помощью glBufferSubData() ?
Я провел много времени с OpenGL 1.x... и вернулся к OpenGL несколько месяцев назад и понял, что многое изменилось. Я попробую несколько вариантов, но ваши предложения и опыт приветствуются.