AzerothCore 3.3.5a
OpenSource WoW Emulator
|
#include "MapBuilder.h"
Public Member Functions | |
MapBuilder (float maxWalkableAngle, bool skipLiquid, bool skipContinents, bool skipJunkMaps, bool skipBattlegrounds, bool debugOutput, bool bigBaseUnit, int mapid, char const *offMeshFilePath, unsigned int threads) | |
~MapBuilder () | |
void | buildMeshFromFile (char *name) |
void | buildSingleTile (uint32 mapID, uint32 tileX, uint32 tileY) |
void | buildMaps (Optional< uint32 > mapID) |
Private Member Functions | |
void | buildMap (uint32 mapID) |
void | discoverTiles () |
std::set< uint32 > * | getTileList (uint32 mapID) |
void | buildNavMesh (uint32 mapID, dtNavMesh *&navMesh) |
void | getTileBounds (uint32 tileX, uint32 tileY, float *verts, int vertCount, float *bmin, float *bmax) const |
void | getGridBounds (uint32 mapID, uint32 &minX, uint32 &minY, uint32 &maxX, uint32 &maxY) const |
bool | shouldSkipMap (uint32 mapID) const |
bool | isTransportMap (uint32 mapID) const |
bool | isContinentMap (uint32 mapID) const |
rcConfig | GetMapSpecificConfig (uint32 mapID, float bmin[3], float bmax[3], const TileConfig &tileConfig) const |
uint32 | percentageDone (uint32 totalTiles, uint32 totalTilesDone) const |
uint32 | currentPercentageDone () const |
Private Attributes | |
TerrainBuilder * | m_terrainBuilder {nullptr} |
TileList | m_tiles |
bool | m_debugOutput |
const char * | m_offMeshFilePath |
unsigned int | m_threads |
bool | m_skipContinents |
bool | m_skipJunkMaps |
bool | m_skipBattlegrounds |
bool | m_skipLiquid |
float | m_maxWalkableAngle |
bool | m_bigBaseUnit |
int32 | m_mapid |
std::atomic< uint32 > | m_totalTiles |
std::atomic< uint32 > | m_totalTilesProcessed |
rcContext * | m_rcContext {nullptr} |
std::vector< TileBuilder * > | m_tileBuilders |
ProducerConsumerQueue< TileInfo > | _queue |
std::atomic< bool > | _cancelationToken |
Friends | |
class | TileBuilder |
MMAP::MapBuilder::MapBuilder | ( | float | maxWalkableAngle, |
bool | skipLiquid, | ||
bool | skipContinents, | ||
bool | skipJunkMaps, | ||
bool | skipBattlegrounds, | ||
bool | debugOutput, | ||
bool | bigBaseUnit, | ||
int | mapid, | ||
char const * | offMeshFilePath, | ||
unsigned int | threads | ||
) |
References discoverTiles(), m_rcContext, m_terrainBuilder, and m_threads.
MMAP::MapBuilder::~MapBuilder | ( | ) |
References m_rcContext, m_terrainBuilder, and m_tiles.
|
private |
References _queue, buildNavMesh(), getTileList(), MMAP::TileInfo::m_mapId, MMAP::TileInfo::m_navMeshParams, MMAP::TileInfo::m_tileX, MMAP::TileInfo::m_tileY, m_totalTilesProcessed, and VMAP::StaticMapTree::unpackTileID().
Referenced by buildMaps().
References _cancelationToken, _queue, buildMap(), m_bigBaseUnit, m_debugOutput, m_skipLiquid, m_threads, m_tileBuilders, m_tiles, shouldSkipMap(), and TileBuilder.
Referenced by main().
void MMAP::MapBuilder::buildMeshFromFile | ( | char * | name | ) |
References MMAP::TileBuilder::buildMoveMapTile(), buildNavMesh(), MMAP::TerrainBuilder::cleanVertices(), getTileBounds(), m_bigBaseUnit, m_debugOutput, m_skipLiquid, MMAP::MeshData::solidTris, MMAP::MeshData::solidVerts, and TileBuilder.
Referenced by main().
|
private |
*** calculate number of bits needed to store tiles & polys ***/
References getTileBounds(), getTileList(), MMAP::GRID_SIZE, and VMAP::StaticMapTree::unpackTileID().
Referenced by buildMap(), buildMeshFromFile(), and buildSingleTile().
References _cancelationToken, _queue, buildNavMesh(), MMAP::TileBuilder::buildTile(), m_bigBaseUnit, m_debugOutput, m_skipLiquid, and TileBuilder.
Referenced by main().
|
private |
References m_totalTiles, m_totalTilesProcessed, and percentageDone().
Referenced by MMAP::TileBuilder::buildTile().
|
private |
References MMAP::getDirContents(), getGridBounds(), m_tiles, m_totalTiles, VMAP::StaticMapTree::packTileID(), and shouldSkipMap().
Referenced by MapBuilder().
|
private |
References MMAP::GRID_SIZE, MMAP::MeshData::liquidVerts, MMAP::TerrainBuilder::loadVMap(), m_terrainBuilder, and MMAP::MeshData::solidVerts.
Referenced by discoverTiles().
|
private |
References MMAP::TileConfig::BASE_UNIT_DIM, m_bigBaseUnit, m_maxWalkableAngle, and MMAP::TileConfig::VERTEX_PER_TILE.
Referenced by MMAP::TileBuilder::buildMoveMapTile().
|
private |
References MMAP::GRID_SIZE.
Referenced by buildMeshFromFile(), buildNavMesh(), and MMAP::TileBuilder::buildTile().
References m_tiles.
Referenced by buildMap(), and buildNavMesh().
|
private |
Referenced by shouldSkipMap().
|
private |
Referenced by shouldSkipMap().
Referenced by currentPercentageDone().
|
private |
References isContinentMap(), isTransportMap(), m_mapid, m_skipBattlegrounds, m_skipContinents, and m_skipJunkMaps.
Referenced by buildMaps(), and discoverTiles().
|
friend |
Referenced by buildMaps(), buildMeshFromFile(), and buildSingleTile().
|
private |
Referenced by buildMaps(), buildSingleTile(), and MMAP::TileBuilder::WorkerThread().
|
private |
Referenced by buildMap(), buildMaps(), buildSingleTile(), and MMAP::TileBuilder::WorkerThread().
|
private |
Referenced by buildMaps(), buildMeshFromFile(), buildSingleTile(), and GetMapSpecificConfig().
|
private |
Referenced by buildMaps(), buildMeshFromFile(), and buildSingleTile().
|
private |
Referenced by shouldSkipMap().
|
private |
Referenced by GetMapSpecificConfig().
|
private |
Referenced by MMAP::TileBuilder::buildTile().
|
private |
Referenced by MapBuilder(), and ~MapBuilder().
|
private |
Referenced by shouldSkipMap().
|
private |
Referenced by shouldSkipMap().
|
private |
Referenced by shouldSkipMap().
|
private |
Referenced by buildMaps(), buildMeshFromFile(), and buildSingleTile().
|
private |
Referenced by getGridBounds(), MapBuilder(), and ~MapBuilder().
|
private |
Referenced by buildMaps(), and MapBuilder().
|
private |
Referenced by buildMaps().
|
private |
Referenced by buildMaps(), discoverTiles(), getTileList(), and ~MapBuilder().
|
private |
Referenced by currentPercentageDone(), and discoverTiles().
|
private |
Referenced by buildMap(), MMAP::TileBuilder::buildTile(), and currentPercentageDone().