Как реализовать функцию камеры смотреть на точку используя кватернионы, используя библиотеку glm?Сейчас я имею следующую реализацию:
glm::vec3 front = point - Position;
if (front == vec3(0.0f, 0.0f, 0.0f))
{
this->rotation = vec3(0.0f,0.0f,0.0f);//euler rotation
updateCameraVectors();
}
else {
front = glm::normalize(front);
quat orient = quatLookAt(front, vec3(0.0f,1.0f,0.0f)); // quaterion rotation
vec3 rot = (glm::eulerAngles(orient) * 3.14159f / 180.f); //euler rotation
this->rotation = vec3(glm::degrees(rot.x), glm::degrees(rot.y), glm::degrees(rot.z));
updateCameraVectors();
По логике все правильно, но почему-то углы всегда малы и неправильные .В чем ошибка?