Untitled

 avatar
unknown
plain_text
4 years ago
707 B
4
Indexable
 std::vector<glm::vec2> ComputeNormals(const std::vector<glm::vec2> &vertices)
    {
        std::vector<glm::vec2> normalsList;
		std::vector<glm::vec3> laturi;

		for (int i = 0; i < vertices.size() - 1; i++) {
			laturi.push_back(glm::vec3(vertices.at(i + 1).x - vertices.at(i).x, vertices.at(i + 1).y - vertices.at(i).y, 1));
		}

		laturi.push_back(glm::vec3(vertices.at(0).x - vertices.at((vertices.size() - 1)).x, vertices.at(0).y - vertices.at(vertices.size() - 1).y, 1));

		for (int i = 0; i < vertices.size(); i++) {
			glm::vec2 normalizata = glm::normalize(glm::vec2(laturi.at(i).y, (int)((-1) * laturi.at(i).x)));
			normalsList.push_back(normalizata);
		}
		
        return normalsList;
    }
Editor is loading...