aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFrançois B <445742+Selenium@users.noreply.github.com>2021-08-26 17:22:11 +0200
committerGitHub <noreply@github.com>2021-08-26 17:22:11 +0200
commitf2ef8fa311e7108c1167f4f35187801a0e4966be (patch)
treea6854f850a8765b0c541d0243e23974057542064
parent16f4cf505dcf8f02bedbd7600022dc1be7cec9f1 (diff)
Tools/Vmaps: Fix models bounds (#26864)
-rw-r--r--src/tools/vmap4_assembler/TileAssembler.cpp9
1 files changed, 4 insertions, 5 deletions
diff --git a/src/tools/vmap4_assembler/TileAssembler.cpp b/src/tools/vmap4_assembler/TileAssembler.cpp
index 0fadabd6f54..8a42467b8ee 100644
--- a/src/tools/vmap4_assembler/TileAssembler.cpp
+++ b/src/tools/vmap4_assembler/TileAssembler.cpp
@@ -247,12 +247,11 @@ namespace VMAP
if (groups != 1)
printf("Warning: '%s' does not seem to be a M2 model!\n", modelFilename.c_str());
- AABox modelBound;
+ AABox rotated_bounds;
+ for (int i = 0; i < 8; ++i)
+ rotated_bounds.merge(modelPosition.transform(raw_model.groupsArray[0].bounds.corner(i)));
- modelBound.merge(modelPosition.transform(raw_model.groupsArray[0].bounds.low()));
- modelBound.merge(modelPosition.transform(raw_model.groupsArray[0].bounds.high()));
-
- spawn.iBound = modelBound + spawn.iPos;
+ spawn.iBound = rotated_bounds + spawn.iPos;
spawn.flags |= MOD_HAS_BOUND;
return true;
}