#opengl #glm-math
#opengl #glm-math
Вопрос:
Я пытаюсь нормализовать вектор, вызвав glm::vec3(x, y, z) = glm::normalize(glm:: vec3(x, y, z)), но когда я печатаю новые x, y, z, они кажутся неправильными, поскольку некоторые значения больше 1
Ответ №1:
Когда вы делаете:
glm::vec3(x,y,z) = glm::normalize(glm::vec3(x,y,z));
вы создаете временный и присваиваете ему результаты нормализации. В конце инструкции временное значение будет удалено.
Чтобы это сработало, попробуйте что-то вроде этого:
glm::vec3 v = glm::normalize(glm::vec3(x,y,z));
и ищите значения в v.x
, v.y
, и v.z