Мне трудно нормализовать мой вектор с помощью open gl

#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