У меня есть вектор, который указывает с моей камеры на объект, на который я хочу указать, поэтому я хочу создать кватернион, который поворачивает камеру так, чтобы она указывала на этот вектор. Итак, я делаю это (используя glm)
glm::quat rotation=glm::angleAxis(0.0f,vector);
Если я правильно понимаю эту функцию в случае вектора, например (0,0f, 0,0f, -1,0f), камера должна указывать вперед по оси глубины и без поворота. Но я не знаю, почему в этом случае он создает этот кватернион: x: -0 y: -0 z: -0 w: 1, который ничего не делает, а значения x, y, z отличаются от 0 только в том случае, если угол параметр, переданный в angleAxis (), отличается от 0. Почему это происходит? если я прохожу угол 0, разве он не должен просто создавать вращение только с рысканием и тангажем, но без крена?