mirror of
https://github.com/mangosfour/server.git
synced 2025-12-18 10:37:01 +00:00
[10165] New collission system (vmap) implementation
Important: * You have to re-extract and assemble vmaps * Update your config file, new option 'vmap.enableIndoorCheck' added New features: * Include WMO+DBC area information for correct subarea identification and indoor check * Support for WMO liquid (fishing/swimming in cities, instances and oterh WMO based environments) Technical changes: * New Bounding Interval Hierarchy (BIH) data structure for better performance * Referenced model data for reduced memory usage, needs more files, but reduces overall file size from ~1.9GB to ~550MB Additional Authors: arrai (DBC handling and indoor detection) faramir118 (windows support and bug investigation) And of course thanks Vladimir for a lot of patience and support!
This commit is contained in:
parent
c2bcfd0f18
commit
5e89098a61
57 changed files with 3472 additions and 5694 deletions
|
|
@ -20,11 +20,13 @@
|
|||
#define _VMAPDEFINITIONS_H
|
||||
#include <cstring>
|
||||
|
||||
#define LIQUID_TILE_SIZE (533.333f / 128.f)
|
||||
|
||||
namespace VMAP
|
||||
{
|
||||
//=====================================
|
||||
#define MAX_CAN_FALL_DISTANCE 10.0f
|
||||
const char VMAP_MAGIC[] = "VMAP_2.0";
|
||||
const char VMAP_MAGIC[] = "VMAP_3.0";
|
||||
|
||||
class VMapDefinitions
|
||||
{
|
||||
|
|
@ -33,5 +35,21 @@ namespace VMAP
|
|||
};
|
||||
|
||||
//======================================
|
||||
|
||||
// defined in TileAssembler.cpp currently...
|
||||
bool readChunk(FILE *rf, char *dest, const char *compare, uint32 len);
|
||||
}
|
||||
|
||||
#ifndef NO_CORE_FUNCS
|
||||
#include "Errors.h"
|
||||
#include "Log.h"
|
||||
#define ERROR_LOG(...) sLog.outError(__VA_ARGS__);
|
||||
#else
|
||||
#include <assert.h>
|
||||
#define ASSERT(x) assert(x)
|
||||
#define DEBUG_LOG(...) do{ printf(__VA_ARGS__); printf("\n"); } while(0)
|
||||
#define DETAIL_LOG(...) do{ printf(__VA_ARGS__); printf("\n"); } while(0)
|
||||
#define ERROR_LOG(...) do{ printf("ERROR:"); printf(__VA_ARGS__); printf("\n"); } while(0)
|
||||
#endif
|
||||
|
||||
#endif // _VMAPDEFINITIONS_H
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue