Повернуть объект с помощью клавиш
Я написал код ниже, чтобы вращать куб, но он вращается не правильно. Мне нужно сохранить матрицу вида без изменений, но я не могу догадаться, как это сделать.
Код:
void key_callback(GLFWwindow* window, int key, int scancode, int action, int mode)
{
if (key == GLFW_KEY_ESCAPE && action == GLFW_PRESS)
glfwSetWindowShouldClose(window, GL_TRUE);
if (key == GLFW_KEY_UP)
{
model = rotate(model, 0.08f, vec3(1.0f, 0.0f, 0.0f));
}
if (key == GLFW_KEY_DOWN)
{
model = rotate(model, 0.08f, vec3(-1.0f, 0.0f, 0.0f));
}
if (key == GLFW_KEY_RIGHT)
{
model = rotate(model, 0.08f, vec3(0.0f, 1.0f, 0.0f));
}
if (key == GLFW_KEY_LEFT)
{
model = rotate(model, 0.08f, vec3(0.0f, -1.0f, 0.0f));
}
}