![]() |
TrinityCore
|
#include <MapBuilder.h>
Public Member Functions | |
| MapBuilder (boost::filesystem::path const &inputDirectory, boost::filesystem::path const &outputDirectory, Optional< float > maxWalkableAngle, Optional< float > maxWalkableAngleNotSteep, bool skipLiquid, bool skipContinents, bool skipJunkMaps, bool skipBattlegrounds, bool debugOutput, bool bigBaseUnit, int mapid, char const *offMeshFilePath, unsigned int threads) | |
| ~MapBuilder () | |
| void | buildMeshFromFile (char const *name) |
| void | buildSingleTile (uint32 mapID, uint32 tileX, uint32 tileY) |
| void | buildMaps (Optional< uint32 > mapID) |
Private Member Functions | |
| void | buildMap (uint32 mapID) |
| void | discoverTiles () |
| std::span< uint32 const > | getTileList (uint32 mapID) const |
| void | buildNavMesh (uint32 mapID, dtNavMesh *&navMesh) |
| bool | shouldSkipMap (uint32 mapID) const |
| bool | isTransportMap (uint32 mapID) const |
| bool | isDevMap (uint32 mapID) const |
| bool | isBattlegroundMap (uint32 mapID) const |
| bool | isContinentMap (uint32 mapID) const |
| uint32 | percentageDone (uint32 totalTiles, uint32 totalTilesDone) const |
| uint32 | currentPercentageDone () const |
| void | ParseOffMeshConnectionsFile (char const *offMeshFilePath) |
Private Attributes | |
| TileList | m_tiles |
| boost::filesystem::path | m_inputDirectory |
| boost::filesystem::path | m_outputDirectory |
| bool | m_debugOutput |
| std::vector< OffMeshData > | m_offMeshConnections |
| unsigned int | m_threads |
| bool | m_skipContinents |
| bool | m_skipJunkMaps |
| bool | m_skipBattlegrounds |
| bool | m_skipLiquid |
| Optional< float > | m_maxWalkableAngle |
| Optional< float > | m_maxWalkableAngleNotSteep |
| bool | m_bigBaseUnit |
| int32 | m_mapid |
| uint32 | m_totalTiles |
| std::atomic< uint32 > | m_totalTilesProcessed |
| std::vector< std::unique_ptr< TileBuilder > > | m_tileBuilders |
| ProducerConsumerQueue< TileInfo > | _queue |
| std::atomic< bool > | _cancelationToken |
Friends | |
| class | TileBuilder |
| class | MapTileBuilder |
Definition at line 76 of file MapBuilder.h.
| MMAP::MapBuilder::MapBuilder | ( | boost::filesystem::path const & | inputDirectory, |
| boost::filesystem::path const & | outputDirectory, | ||
| Optional< float > | maxWalkableAngle, | ||
| Optional< float > | maxWalkableAngleNotSteep, | ||
| bool | skipLiquid, | ||
| bool | skipContinents, | ||
| bool | skipJunkMaps, | ||
| bool | skipBattlegrounds, | ||
| bool | debugOutput, | ||
| bool | bigBaseUnit, | ||
| int | mapid, | ||
| char const * | offMeshFilePath, | ||
| unsigned int | threads | ||
| ) |
Definition at line 62 of file MapBuilder.cpp.
References discoverTiles(), m_threads, and ParseOffMeshConnectionsFile().
| MMAP::MapBuilder::~MapBuilder | ( | ) |
Definition at line 92 of file MapBuilder.cpp.
References _cancelationToken, _queue, m_tileBuilders, and m_tiles.
|
private |
Definition at line 363 of file MapBuilder.cpp.
References _queue, buildNavMesh(), getTileList(), MMAP::TileInfo::m_mapId, MMAP::TileInfo::m_navMeshParams, MMAP::TileInfo::m_tileX, MMAP::TileInfo::m_tileY, m_totalTilesProcessed, TC_LOG_ERROR, TC_LOG_INFO, and VMAP::StaticMapTree::unpackTileID().
Referenced by buildMaps().
Definition at line 251 of file MapBuilder.cpp.
References _cancelationToken, _queue, buildMap(), m_bigBaseUnit, m_debugOutput, m_maxWalkableAngle, m_maxWalkableAngleNotSteep, m_offMeshConnections, m_skipLiquid, m_threads, m_tileBuilders, m_tiles, MapTileBuilder, and TC_LOG_INFO.
Referenced by main().
| void MMAP::MapBuilder::buildMeshFromFile | ( | char const * | name | ) |
Definition at line 284 of file MapBuilder.cpp.
References MMAP::TileBuilder::buildMoveMapTile(), buildNavMesh(), MMAP::TerrainBuilder::cleanVertices(), MMAP::TileBuilder::TileResult::data, MMAP::TileBuilder::getTileBounds(), m_bigBaseUnit, m_debugOutput, m_maxWalkableAngle, m_maxWalkableAngleNotSteep, m_offMeshConnections, m_skipLiquid, MMAP::TileBuilder::saveMoveMapTileToFile(), MMAP::MeshData::solidTris, MMAP::MeshData::solidVerts, TC_LOG_ERROR, and TC_LOG_INFO.
Referenced by main().
|
private |
*** calculate number of bits needed to store tiles & polys ***/
Definition at line 401 of file MapBuilder.cpp.
References MMAP::TileBuilder::getTileBounds(), getTileList(), MMAP::GRID_SIZE, m_offMeshConnections, m_outputDirectory, OffMeshData::MapId, MmapNavMeshHeader::offmeshConnectionCount, MmapNavMeshHeader::params, MMAP::sMapStore, Trinity::StringFormat(), TC_LOG_ERROR, TC_LOG_INFO, and VMAP::StaticMapTree::unpackTileID().
Referenced by buildMap(), buildMeshFromFile(), and buildSingleTile().
Definition at line 340 of file MapBuilder.cpp.
References _cancelationToken, _queue, buildNavMesh(), MMAP::TileBuilder::buildTile(), m_bigBaseUnit, m_debugOutput, m_maxWalkableAngle, m_maxWalkableAngleNotSteep, m_offMeshConnections, m_skipLiquid, and TC_LOG_ERROR.
Referenced by main().
|
private |
Definition at line 607 of file MapBuilder.cpp.
References m_totalTiles, m_totalTilesProcessed, and percentageDone().
Referenced by MMAP::MapTileBuilder::GetProgressText().
|
private |
Definition at line 103 of file MapBuilder.cpp.
References Trinity::Containers::FlatSet< Key, Compare, KeyContainer >::insert(), m_inputDirectory, m_tiles, m_totalTiles, MapMagic, MapVersionMagic, VMAP::StaticMapTree::packTileID(), shouldSkipMap(), TC_LOG_INFO, FileExtensions::tilelist, and FileExtensions::vmtile.
Referenced by MapBuilder().
Definition at line 216 of file MapBuilder.cpp.
References m_tiles, and Trinity::Containers::MapGetValuePtr().
Referenced by buildMap(), and buildNavMesh().
|
private |
Definition at line 543 of file MapBuilder.cpp.
References Trinity::Containers::MapGetValuePtr(), and MMAP::sMapStore.
Referenced by shouldSkipMap().
|
private |
Definition at line 551 of file MapBuilder.cpp.
Referenced by shouldSkipMap().
|
private |
Definition at line 535 of file MapBuilder.cpp.
References Trinity::Containers::MapGetValuePtr(), and MMAP::sMapStore.
Referenced by shouldSkipMap().
|
private |
Definition at line 527 of file MapBuilder.cpp.
References Trinity::Containers::MapGetValuePtr(), and MMAP::sMapStore.
Referenced by shouldSkipMap().
|
private |
Definition at line 181 of file MapBuilder.cpp.
References OffMeshData::AreaId, OffMeshData::ConnectionFlags, OffMeshData::Flags, OffMeshData::From, m_offMeshConnections, OffMeshData::MapId, NAV_AREA_GROUND, NAV_GROUND, OFFMESH_CONNECTION_FLAG_BIDIRECTIONAL, OffMeshData::Radius, TC_LOG_ERROR, OffMeshData::TileX, OffMeshData::TileY, and OffMeshData::To.
Referenced by MapBuilder().
Definition at line 599 of file MapBuilder.cpp.
Referenced by currentPercentageDone().
|
private |
Definition at line 487 of file MapBuilder.cpp.
References isBattlegroundMap(), isContinentMap(), isDevMap(), isTransportMap(), m_mapid, m_skipBattlegrounds, m_skipContinents, m_skipJunkMaps, and MMAP::sMapStore.
Referenced by discoverTiles().
|
friend |
Definition at line 79 of file MapBuilder.h.
Referenced by buildMaps().
|
friend |
Definition at line 78 of file MapBuilder.h.
|
private |
Definition at line 150 of file MapBuilder.h.
Referenced by buildMaps(), buildSingleTile(), MMAP::MapTileBuilder::WorkerThread(), and ~MapBuilder().
|
private |
Definition at line 149 of file MapBuilder.h.
Referenced by buildMap(), buildMaps(), buildSingleTile(), MMAP::MapTileBuilder::WorkerThread(), and ~MapBuilder().
|
private |
Definition at line 141 of file MapBuilder.h.
Referenced by buildMaps(), buildMeshFromFile(), and buildSingleTile().
|
private |
Definition at line 130 of file MapBuilder.h.
Referenced by buildMaps(), buildMeshFromFile(), and buildSingleTile().
|
private |
Definition at line 128 of file MapBuilder.h.
Referenced by discoverTiles().
|
private |
Definition at line 143 of file MapBuilder.h.
Referenced by shouldSkipMap().
|
private |
Definition at line 139 of file MapBuilder.h.
Referenced by buildMaps(), buildMeshFromFile(), and buildSingleTile().
|
private |
Definition at line 140 of file MapBuilder.h.
Referenced by buildMaps(), buildMeshFromFile(), and buildSingleTile().
|
private |
Definition at line 132 of file MapBuilder.h.
Referenced by buildMaps(), buildMeshFromFile(), buildNavMesh(), buildSingleTile(), and ParseOffMeshConnectionsFile().
|
private |
Definition at line 129 of file MapBuilder.h.
Referenced by buildNavMesh().
|
private |
Definition at line 136 of file MapBuilder.h.
Referenced by shouldSkipMap().
|
private |
Definition at line 134 of file MapBuilder.h.
Referenced by shouldSkipMap().
|
private |
Definition at line 135 of file MapBuilder.h.
Referenced by shouldSkipMap().
|
private |
Definition at line 137 of file MapBuilder.h.
Referenced by buildMaps(), buildMeshFromFile(), and buildSingleTile().
|
private |
Definition at line 133 of file MapBuilder.h.
Referenced by buildMaps(), and MapBuilder().
|
private |
Definition at line 148 of file MapBuilder.h.
Referenced by buildMaps(), and ~MapBuilder().
|
private |
Definition at line 126 of file MapBuilder.h.
Referenced by buildMaps(), discoverTiles(), getTileList(), and ~MapBuilder().
|
private |
Definition at line 145 of file MapBuilder.h.
Referenced by currentPercentageDone(), and discoverTiles().
|
private |
Definition at line 146 of file MapBuilder.h.
Referenced by buildMap(), currentPercentageDone(), and MMAP::MapTileBuilder::OnTileDone().