@Anthony228357

Как правильно реализовать функцию lookat для камеры в opengl используя кватерионы?

Как реализовать функцию камеры смотреть на точку используя кватернионы, используя библиотеку 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();

По логике все правильно, но почему-то углы всегда малы и неправильные .В чем ошибка?
  • Вопрос задан
  • 103 просмотра
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы