From ce1901524f4025a2f1d4bbafe376b250b7ff70cd Mon Sep 17 00:00:00 2001 From: Ovahlord Date: Sat, 28 Aug 2021 14:39:19 +0200 Subject: [PATCH] Tools/VMapExtrator: ported m2 model bounds issue fix from master branch --- src/common/Collision/Maps/TileAssembler.cpp | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/src/common/Collision/Maps/TileAssembler.cpp b/src/common/Collision/Maps/TileAssembler.cpp index 29d11fed9e..0d0daaa9db 100644 --- a/src/common/Collision/Maps/TileAssembler.cpp +++ b/src/common/Collision/Maps/TileAssembler.cpp @@ -252,12 +252,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; }