допустим есть куб и прямоугольник , куб двигается по какой либо из осей, а прямоугольник вращается
Такое объяснение сильно расходится с формулировкой "одновременно выполнять трансформацию нескольких объектов". Твоя формулировка говорит о том, что тебе необходимо понимание системы Scene graph.
Но твое объяснение говорит о том, что тебе необходимо понимание элементарного ООП.
Буквально, следуя слово за словом по твоему объяснению.
У тебя есть два объекта. Один из них имеет форму куба, второй - форму параллелепипеда (не прямоугольника). Заметить надо, что объекты имеют форму, а не являются формой. Для объекта с формой куба применяется анимация движения вдоль оси. Для объекта с формой параллелепипеда применяется анимация вращения вокруг центра его локальной системы координат.
Что конкретно у тебя не получается из этого всего понять или сделать?
Василий Дёмин, в данном способе они "зависят" от того что координаты вершин в локальной системе координат у них одинаковые т.е одна и та же форма, а мне надо наоборот
Евгений Шатунов, У меня вопрос как сделать так как вы пишете в комментарии
Просто непонятно где умножать вершины каждой модели : в шейдерах или в самой программе на с++
IliaNeverov, умножение вершин на матрицу мира следует делать исключительно в шейдере. Другое дело - это что для каждого отдельного объекта у тебя должна быть своя матрица мира, которая должна вычисляться из целой иерархии связей для каждого объекта отдельно.
Такая формулировка выдает твою неорганизованность. Ты хочешь что-то сделать на этапе формирования кадра, а как у тебя все организовано вокруг места формирования кадра, ты информации не предоставляешь. Вероятно у тебя просто ничего нет кроме, собственно, процесса отрисовки каких-то вершин. Вероятно ты не знаешь что делать просто потому что у тебя нет никакой основы для процессинга кадра. Т.е. ты слишком поспешил с желанием что-то рисовать и тебе сперва требуется обеспечить целую экосистему, в рамках которой ты уже будешь знать, что делать чтобы нарисовать объект.
Действовать в твоем положении можно по-разному. Например...
Берешь, открываешь гитхаб, идешь в тему OpenGL. Смотришь движки и примеры. Скачиваешь, открываешь, запускаешь и отлаживаешь. Понимаешь как там все устроено.
Этот способ не самый лучший по моему, допустим если на сцене есть 1000 объектов и каждый из них как то трансформируется тогда (используя этот способ) придется создавать 1000 потоков, а это нехорошо скажется на производительности