![]() |
TrinityCore
|
Classes | |
| struct | AreaAndLiquidData |
| struct | AreaInfo |
| struct | GModelRayCallback |
| class | GroupModel |
| struct | GroupModel_Raw |
| struct | LocationInfo |
| class | LocationInfoCallback |
| class | ManagedModel |
| class | MapRayCallback |
| struct | MapSpawns |
| struct | MeshTriangle |
| class | ModelInstance |
| struct | ModelMinimalData |
| class | ModelPosition |
| struct | ModelSpawn |
| class | StaticMapTree |
| struct | StaticMapTreeLocationInfo |
| class | TileAssembler |
| struct | TileFileOpenResult |
| class | TriBoundFunc |
| class | VMapFactory |
| class | VMapManager |
| class | WModelAreaCallback |
| struct | WModelRayCallBack |
| class | WmoLiquid |
| struct | WMOLiquidHeader |
| class | WorldModel |
| struct | WorldModel_Raw |
| struct | WorldModelLocationInfoQueryResult |
Typedefs | |
| typedef std::unordered_map< uint32, std::unique_ptr< StaticMapTree > > | InstanceTreeMap |
| typedef std::unordered_map< std::string, std::weak_ptr< ManagedModel > > | ModelFileMap |
| typedef std::deque< MapSpawns > | MapData |
Enumerations | |
| enum | DisableTypes : uint8 { VMAP_DISABLE_AREAFLAG = 0x1 , VMAP_DISABLE_HEIGHT = 0x2 , VMAP_DISABLE_LOS = 0x4 , VMAP_DISABLE_LIQUIDSTATUS = 0x8 } |
| enum class | LoadResult : uint8 { Success , FileNotFound , VersionMismatch , ReadFromFileFailed , DisabledInConfig } |
| enum class | ModelIgnoreFlags : uint32 { Nothing = 0x00 , M2 = 0x01 } |
| enum | ModelInstanceFlags { MOD_HAS_BOUND = 1 << 0 , MOD_PARENT_SPAWN = 1 << 1 , MOD_PATH_ONLY = 1 << 2 } |
| enum class | ModelFlags : uint32 { None = 0x0 , IsM2 = 0x1 } |
Functions | |
| bool | readChunk (FILE *rf, char *dest, const char *compare, uint32 len) |
| static G3D::Vector3 | convertPositionToInternalRep (float x, float y, float z) |
| TileFileOpenResult | OpenMapTileFile (std::string const &basePath, uint32 mapID, uint32 tileX, uint32 tileY, VMapManager *vm) |
| ModelIgnoreFlags | operator& (ModelIgnoreFlags left, ModelIgnoreFlags right) |
| bool | IntersectTriangle (MeshTriangle const &tri, G3D::Vector3 const *points, G3D::Ray const &ray, float &distance) |
| bool | IsInsideOrAboveBound (G3D::AABox const &bounds, G3D::Point3 const &point) |
| DEFINE_ENUM_FLAG (ModelFlags) | |
| static auto | OpenFile (boost::filesystem::path const &p, char const *mode) |
Variables | |
| VMapManager * | gVMapManager = nullptr |
| const char | VMAP_MAGIC [] = "VMAP_4.E" |
| const char | RAW_VMAP_MAGIC [] = "VMAP04E" |
| const char | GAMEOBJECT_MODELS [] = "GameObjectModels.dtree" |
This is the access point to the VMapManager.
This is the main Class to manage loading and unloading of maps, line of sight, height calculation and so on. For each map or map tile to load it reads a directory file that contains the ModelContainer files used by this map or map tile. Each global map or instance has its own dynamic BSP-Tree. The loaded ModelContainers are included in one of these BSP-Trees. Additionally a table to match map ids and map names is used.
| typedef std::unordered_map<uint32, std::unique_ptr<StaticMapTree> > VMAP::InstanceTreeMap |
Definition at line 50 of file VMapManager.h.
| typedef std::deque<MapSpawns> VMAP::MapData |
Definition at line 64 of file TileAssembler.h.
| typedef std::unordered_map<std::string, std::weak_ptr<ManagedModel> > VMAP::ModelFileMap |
Definition at line 51 of file VMapManager.h.
| enum VMAP::DisableTypes : uint8 |
| Enumerator | |
|---|---|
| VMAP_DISABLE_AREAFLAG | |
| VMAP_DISABLE_HEIGHT | |
| VMAP_DISABLE_LOS | |
| VMAP_DISABLE_LIQUIDSTATUS | |
Definition at line 53 of file VMapManager.h.
|
strong |
| Enumerator | |
|---|---|
| Success | |
| FileNotFound | |
| VersionMismatch | |
| ReadFromFileFailed | |
| DisabledInConfig | |
Definition at line 61 of file VMapManager.h.
|
strong |
| Enumerator | |
|---|---|
| None | |
| IsM2 | |
Definition at line 31 of file WorldModel.h.
|
strong |
| Enumerator | |
|---|---|
| Nothing | |
| M2 | |
Definition at line 25 of file ModelIgnoreFlags.h.
| Enumerator | |
|---|---|
| MOD_HAS_BOUND | |
| MOD_PARENT_SPAWN | |
| MOD_PATH_ONLY | |
Definition at line 35 of file ModelInstance.h.
|
inlinestatic |
Definition at line 100 of file VMapManager.cpp.
Referenced by VMAP::VMapManager::getAreaAndLiquidData(), VMAP::VMapManager::getHeight(), VMAP::VMapManager::getObjectHitPos(), and VMAP::VMapManager::isInLineOfSight().
| VMAP::DEFINE_ENUM_FLAG | ( | ModelFlags | ) |
| bool VMAP::IntersectTriangle | ( | MeshTriangle const & | tri, |
| G3D::Vector3 const * | points, | ||
| G3D::Ray const & | ray, | ||
| float & | distance | ||
| ) |
Definition at line 34 of file WorldModel.cpp.
References VMAP::MeshTriangle::idx0, VMAP::MeshTriangle::idx1, and VMAP::MeshTriangle::idx2.
Referenced by VMAP::GModelRayCallback::operator()().
|
inline |
Definition at line 413 of file WorldModel.cpp.
Referenced by VMAP::GroupModel::IsInsideObject().
|
static |
Definition at line 41 of file TileAssembler.cpp.
Referenced by VMAP::TileAssembler::convertMap(), VMAP::TileAssembler::convertWorld2(), VMAP::TileAssembler::exportGameobjectModels(), and VMAP::WorldModel_Raw::Read().
| TileFileOpenResult VMAP::OpenMapTileFile | ( | std::string const & | basePath, |
| uint32 | mapID, | ||
| uint32 | tileX, | ||
| uint32 | tileY, | ||
| VMapManager * | vm | ||
| ) |
Definition at line 201 of file MapTree.cpp.
References VMAP::VMapManager::getParentMapId(), VMAP::VMapManager::getTileFileName(), VMAP::TileFileOpenResult::Name, VMAP::TileFileOpenResult::SpawnIndicesFile, VMAP::TileFileOpenResult::TileFile, and VMAP::TileFileOpenResult::UsedMapId.
Referenced by VMAP::StaticMapTree::CanLoadMap(), and VMAP::StaticMapTree::LoadMapTile().
|
inline |
Definition at line 31 of file ModelIgnoreFlags.h.
| bool VMAP::readChunk | ( | FILE * | rf, |
| char * | dest, | ||
| const char * | compare, | ||
| uint32 | len | ||
| ) |
Definition at line 52 of file VMapManager.cpp.
Referenced by VMAP::StaticMapTree::CanLoadMap(), VMAP::StaticMapTree::InitMap(), VMAP::StaticMapTree::LoadMapTile(), VMAP::WorldModel::readFile(), and VMAP::GroupModel::readFromFile().
| const char VMAP::GAMEOBJECT_MODELS[] = "GameObjectModels.dtree" |
Definition at line 30 of file VMapDefinitions.h.
Referenced by VMAP::TileAssembler::exportGameobjectModels(), and LoadGameObjectModelList().
| VMapManager* VMAP::gVMapManager = nullptr |
Definition at line 23 of file VMapFactory.cpp.
Referenced by VMAP::VMapFactory::clear(), and VMAP::VMapFactory::createOrGetVMapManager().
| const char VMAP::RAW_VMAP_MAGIC[] = "VMAP04E" |
Definition at line 29 of file VMapDefinitions.h.
Referenced by Model::ConvertToVMAPModel(), WMORoot::ConvertToVMAPRootWmo(), VMAP::TileAssembler::exportGameobjectModels(), ExtractGameobjectModels(), and VMAP::WorldModel_Raw::Read().
| const char VMAP::VMAP_MAGIC[] = "VMAP_4.E" |
Definition at line 28 of file VMapDefinitions.h.
Referenced by VMAP::StaticMapTree::CanLoadMap(), VMAP::TileAssembler::convertMap(), VMAP::TileAssembler::exportGameobjectModels(), VMAP::StaticMapTree::InitMap(), LoadGameObjectModelList(), VMAP::StaticMapTree::LoadMapTile(), main(), VMAP::WorldModel::readFile(), and VMAP::WorldModel::writeFile().