From 89d641f1e68d11359a2398ff51d3d6eee1470ae8 Mon Sep 17 00:00:00 2001 From: Golrag Date: Fri, 14 Jul 2017 18:00:51 +0200 Subject: Core/VMaps: Fix no collision triangles --- src/common/Collision/VMapDefinitions.h | 4 ++-- src/tools/vmap4_extractor/vmapexport.cpp | 2 +- src/tools/vmap4_extractor/wmo.cpp | 6 ++---- 3 files changed, 5 insertions(+), 7 deletions(-) (limited to 'src') diff --git a/src/common/Collision/VMapDefinitions.h b/src/common/Collision/VMapDefinitions.h index d5beac48a3c..5af52770dd3 100644 --- a/src/common/Collision/VMapDefinitions.h +++ b/src/common/Collision/VMapDefinitions.h @@ -25,8 +25,8 @@ namespace VMAP { - const char VMAP_MAGIC[] = "VMAP_4.3"; - const char RAW_VMAP_MAGIC[] = "VMAP043"; // used in extracted vmap files with raw data + const char VMAP_MAGIC[] = "VMAP_4.4"; + const char RAW_VMAP_MAGIC[] = "VMAP044"; // used in extracted vmap files with raw data const char GAMEOBJECT_MODELS[] = "GameObjectModels.dtree"; // defined in TileAssembler.cpp currently... diff --git a/src/tools/vmap4_extractor/vmapexport.cpp b/src/tools/vmap4_extractor/vmapexport.cpp index aeac69b6751..ff2dd61cb07 100644 --- a/src/tools/vmap4_extractor/vmapexport.cpp +++ b/src/tools/vmap4_extractor/vmapexport.cpp @@ -65,7 +65,7 @@ bool preciseVectorData = false; //static const char * szWorkDirMaps = ".\\Maps"; char const* szWorkDirWmo = "./Buildings"; -char const* szRawVMAPMagic = "VMAP043"; +char const* szRawVMAPMagic = "VMAP044"; // Local testing functions diff --git a/src/tools/vmap4_extractor/wmo.cpp b/src/tools/vmap4_extractor/wmo.cpp index 441fe281c04..d98e1f9112d 100644 --- a/src/tools/vmap4_extractor/wmo.cpp +++ b/src/tools/vmap4_extractor/wmo.cpp @@ -349,10 +349,8 @@ int WMOGroup::ConvertToVMAPGroupWmo(FILE *output, WMORoot *rootWMO, bool precise { // Skip no collision triangles bool isRenderFace = (MOPY[2 * i] & WMO_MATERIAL_RENDER) && !(MOPY[2 * i] & WMO_MATERIAL_DETAIL); - bool isDetail = (MOPY[2 * i] & WMO_MATERIAL_DETAIL) != 0; - bool isCollision = (MOPY[2 * i] & WMO_MATERIAL_COLLISION) != 0; - - if (!isRenderFace && !isDetail && !isCollision) + bool isCollision = MOPY[2 * i] & WMO_MATERIAL_COLLISION || isRenderFace; + if (!isCollision) continue; // Use this triangle -- cgit v1.2.3