From 83f49f8cc4c16286a9dbf49aa32063c6b51af5fe Mon Sep 17 00:00:00 2001 From: MihailRis Date: Sun, 15 Mar 2026 12:56:51 +0300 Subject: [PATCH] update vcm bone 'move' semantics --- src/coders/vcm.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/coders/vcm.cpp b/src/coders/vcm.cpp index 0f408131d..738d49c09 100644 --- a/src/coders/vcm.cpp +++ b/src/coders/vcm.cpp @@ -344,9 +344,10 @@ static void perform_box(const xmlelement& root, ModelBuilder& builder) { static void perform_bone(const xmlelement& root, ModelBuilder& builder, Context& ctx) { std::string name = root.attr("name", "").getText(); + glm::vec3 movement {}; glm::mat4 tsf(1.0f); if (root.has("move")) { - tsf = glm::translate(tsf, root.attr("move").asVec3()); + movement = root.attr("move").asVec3(); } if (root.has("rotate")) { auto text = root.attr("rotate").getText(); @@ -371,7 +372,7 @@ static void perform_bone(const xmlelement& root, ModelBuilder& builder, Context& } builder.pop(); } else { - glm::vec3 origin = builder.getTransform() * glm::vec4(0.0f, 0.0f, 0.0f, 1.0f); + glm::vec3 origin = builder.getTransform() * glm::vec4(movement, 1.0f); size_t boneIndex = ctx.boneIndex++; std::vector> bones;