У меня есть класс, AssetInstance
это имеет std::vector<glm::vec3> vertices
это имеет свои вершины. Он также имеет переменные position
а также size
, Когда я хочу обновить его вершины, у меня сложилось впечатление, что я могу сделать:
for(glm::vec3& vertex : vertices)
vertex = glm::vec3(translate() * scale() * glm::vec4(vertex, 1));
где перевести это:
glm::mat4 AssetInstance::translate()
{
return glm::translate(glm::mat4(), position);
}
и масштаб:
glm::mat4 AssetInstance::scale()
{
return glm::scale(glm::mat4(), size);
}
Однако когда я запускаю этот цикл, он заканчивает тем, что устанавливает каждую вершину в вершинах на одно и то же значение, и это значение далеко не так, как должно быть. Я знаю, что здесь что-то не так, но не могу понять, что.
Задача ещё не решена.