diff --git a/src/mesh.cpp b/src/mesh.cpp index da4b584..aecce41 100644 --- a/src/mesh.cpp +++ b/src/mesh.cpp @@ -367,6 +367,8 @@ void Mesh::computeTangents() glm::vec3 binormalDir = deltaUV1.x * edge2 - deltaUV2.x * edge1; binormalDir = glm::normalize(binormalDir*f); + if(glm::dot(glm::cross(normals[vertexId0], binormalDir), tangentDir) < 0.f) + binormalDir = -binormalDir; tangents[vertexId0] = {tangentDir, binormalDir}; tangents[vertexId1] = {tangentDir, binormalDir};