В примере к видовой матрице указано:
glm::mat4 View = glm::lookAt(
glm::vec3(4,3,3), // Камера находится в мировых координатах (4,3,3)
glm::vec3(0,0,0), // И направлена в начало координат
glm::vec3(0,1,0) // "Голова" находится сверху
);
Вопрос касательно 3го параметра. Разве up вектор, не должен указывать именно на точку над камерой (выше камеры)?
Если у нас камера находиться в координатах (4,3,3), тогда up должен быть (4,4,3). Или нет?
Как уже написали в комментариях, up задается относительно позиции камеры.
up = точка_над_камерой - позиция_камеры = (4,4,3) - (4,3,3) = (0,1,0).
Вы, очевидно, путаете термины вектор и направленный отрезок. Термин вектор соответствует всему классу направленных отрезков одинаковой длины и направления, а не какому-то конкретному отрезку. У вектора нет и не может быть конкретной позиции, т.е. он по определению никак не привязан и не может быть привязан ни к какой конкретной точке. В каком месте располагается ваша камера - не имеет никакого значения. В вашем случае речь идет о том, что направление "up" задается вектором (0, 1, 0), ни больше, ни меньше.
Продвижение своими сайтами как стратегия роста и независимости