diff options
-rw-r--r-- | assetFactory/faceController.cpp | 2 | ||||
-rw-r--r-- | assetFactory/use.cpp | 2 | ||||
-rw-r--r-- | lib/maths.h | 6 |
3 files changed, 5 insertions, 5 deletions
diff --git a/assetFactory/faceController.cpp b/assetFactory/faceController.cpp index 10a0c1e..3f75b38 100644 --- a/assetFactory/faceController.cpp +++ b/assetFactory/faceController.cpp @@ -53,7 +53,7 @@ FaceController::extrude(ModelFactoryMesh & mesh, const std::string & faceName, O // create new vertices const auto vertices = baseVertices * [&mesh, mutation = getMatrix(), centre = mesh.calc_face_centroid(faceHandle)](auto && v) { - return mesh.add_vertex(centre + ((mesh.point(v) - centre) % mutation)); + return mesh.add_vertex(centre + perspectiveMultiply((mesh.point(v) - centre), mutation)); }; // get new faces names const auto vertexCount = baseVertices.size(); diff --git a/assetFactory/use.cpp b/assetFactory/use.cpp index d5ea39d..42bc703 100644 --- a/assetFactory/use.cpp +++ b/assetFactory/use.cpp @@ -15,7 +15,7 @@ Use::createMesh(ModelFactoryMesh & mesh, Scale3D levelOfDetailFactor) const const auto fvr = mesh.fv_range(f.second); for (const auto & v : fvr) { if (!vs.contains(v)) { - mesh.point(v) %= m; + perspectiveApply(mesh.point(v), m); vs.insert(v); } } diff --git a/lib/maths.h b/lib/maths.h index 63b752a..018ef0e 100644 --- a/lib/maths.h +++ b/lib/maths.h @@ -176,7 +176,7 @@ operator||(const glm::vec<L, T, Q> v1, const T v2) template<glm::length_t L, typename T, glm::qualifier Q> inline constexpr glm::vec<L, T, Q> -operator%(const glm::vec<L, T, Q> & p, const glm::mat<L + 1, L + 1, T, Q> & mutation) +perspectiveMultiply(const glm::vec<L, T, Q> & p, const glm::mat<L + 1, L + 1, T, Q> & mutation) { const auto p2 = mutation * (p || T(1)); return p2 / p2.w; @@ -184,9 +184,9 @@ operator%(const glm::vec<L, T, Q> & p, const glm::mat<L + 1, L + 1, T, Q> & muta template<glm::length_t L, typename T, glm::qualifier Q> inline constexpr glm::vec<L, T, Q> -operator%=(glm::vec<L, T, Q> & p, const glm::mat<L + 1, L + 1, T, Q> & mutation) +perspectiveApply(glm::vec<L, T, Q> & p, const glm::mat<L + 1, L + 1, T, Q> & mutation) { - return p = p % mutation; + return p = perspectiveMultiply(p, mutation); } float normalize(float ang); |