Align all data chunks in the navmesh data to 4 bytes.

This commit is contained in:
Mikko Mononen 2009-11-20 08:29:03 +00:00
parent b93bd10fa4
commit 3a8b259bd2
8 changed files with 549 additions and 99 deletions

View File

@ -125,6 +125,8 @@ inline int nextPow2(int v)
return v;
}
inline int align4(int x) { return (x+3) & ~3; }
inline float vdot2D(const float* u, const float* v)
{
return u[0]*v[0] + u[2]*v[2];

View File

@ -52,13 +52,13 @@ bool dtStatNavMesh::init(unsigned char* data, int dataSize, bool ownsData)
if (header->version != DT_STAT_NAVMESH_VERSION)
return false;
const int headerSize = sizeof(dtStatNavMeshHeader);
const int vertsSize = sizeof(float)*3*header->nverts;
const int polysSize = sizeof(dtStatPoly)*header->npolys;
const int nodesSize = sizeof(dtStatBVNode)*header->npolys*2;
const int detailMeshesSize = sizeof(dtStatPolyDetail)*header->ndmeshes;
const int detailVertsSize = sizeof(float)*3*header->ndverts;
const int detailTrisSize = sizeof(unsigned char)*4*header->ndtris;
const int headerSize = align4(sizeof(dtStatNavMeshHeader));
const int vertsSize = align4(sizeof(float)*3*header->nverts);
const int polysSize = align4(sizeof(dtStatPoly)*header->npolys);
const int nodesSize = align4(sizeof(dtStatBVNode)*header->npolys*2);
const int detailMeshesSize = align4(sizeof(dtStatPolyDetail)*header->ndmeshes);
const int detailVertsSize = align4(sizeof(float)*3*header->ndverts);
const int detailTrisSize = align4(sizeof(unsigned char)*4*header->ndtris);
unsigned char* d = data + headerSize;

View File

@ -19,6 +19,7 @@
#include <math.h>
#include <stdlib.h>
#include <string.h>
#include "DetourCommon.h"
#include "DetourStatNavMesh.h"
struct BVItem
@ -245,13 +246,13 @@ bool dtCreateNavMeshData(const unsigned short* verts, const int nverts,
}
// Calculate data size
const int headerSize = sizeof(dtStatNavMeshHeader);
const int vertsSize = sizeof(float)*3*nverts;
const int polysSize = sizeof(dtStatPoly)*npolys;
const int nodesSize = sizeof(dtStatBVNode)*npolys*2;
const int detailMeshesSize = sizeof(dtStatPolyDetail)*npolys;
const int detailVertsSize = sizeof(float)*3*uniqueDetailVerts;
const int detailTrisSize = sizeof(unsigned char)*4*ndtris;
const int headerSize = align4(sizeof(dtStatNavMeshHeader));
const int vertsSize = align4(sizeof(float)*3*nverts);
const int polysSize = align4(sizeof(dtStatPoly)*npolys);
const int nodesSize = align4(sizeof(dtStatBVNode)*npolys*2);
const int detailMeshesSize = align4(sizeof(dtStatPolyDetail)*npolys);
const int detailVertsSize = align4(sizeof(float)*3*uniqueDetailVerts);
const int detailTrisSize = align4(sizeof(unsigned char)*4*ndtris);
const int dataSize = headerSize + vertsSize + polysSize + nodesSize +
detailMeshesSize + detailVertsSize + detailTrisSize;

View File

@ -360,13 +360,13 @@ bool dtTiledNavMesh::addTileAt(int x, int y, unsigned char* data, int dataSize,
m_posLookup[h] = tile;
// Patch header pointers.
const int headerSize = sizeof(dtTileHeader);
const int vertsSize = sizeof(float)*3*header->nverts;
const int polysSize = sizeof(dtTilePoly)*header->npolys;
const int linksSize = sizeof(dtTileLink)*(header->maxlinks);
const int detailMeshesSize = sizeof(dtTilePolyDetail)*header->ndmeshes;
const int detailVertsSize = sizeof(float)*3*header->ndverts;
const int detailTrisSize = sizeof(unsigned char)*4*header->ndtris;
const int headerSize = align4(sizeof(dtTileHeader));
const int vertsSize = align4(sizeof(float)*3*header->nverts);
const int polysSize = align4(sizeof(dtTilePoly)*header->npolys);
const int linksSize = align4(sizeof(dtTileLink)*(header->maxlinks));
const int detailMeshesSize = align4(sizeof(dtTilePolyDetail)*header->ndmeshes);
const int detailVertsSize = align4(sizeof(float)*3*header->ndverts);
const int detailTrisSize = align4(sizeof(unsigned char)*4*header->ndtris);
unsigned char* d = data + headerSize;
header->verts = (float*)d; d += vertsSize;

View File

@ -94,13 +94,13 @@ bool dtCreateNavMeshTileData(const unsigned short* verts, const int nverts,
}
// Calculate data size
const int headerSize = sizeof(dtTileHeader);
const int vertsSize = sizeof(float)*3*nverts;
const int polysSize = sizeof(dtTilePoly)*npolys;
const int linksSize = sizeof(dtTileLink)*maxLinks;
const int detailMeshesSize = sizeof(dtTilePolyDetail)*npolys;
const int detailVertsSize = sizeof(float)*3*uniqueDetailVerts;
const int detailTrisSize = sizeof(unsigned char)*4*ndtris;
const int headerSize = align4(sizeof(dtTileHeader));
const int vertsSize = align4(sizeof(float)*3*nverts);
const int polysSize = align4(sizeof(dtTilePoly)*npolys);
const int linksSize = align4(sizeof(dtTileLink)*maxLinks);
const int detailMeshesSize = align4(sizeof(dtTilePolyDetail)*npolys);
const int detailVertsSize = align4(sizeof(float)*3*uniqueDetailVerts);
const int detailTrisSize = align4(sizeof(unsigned char)*4*ndtris);
const int dataSize = headerSize + vertsSize + polysSize + linksSize +
detailMeshesSize + detailVertsSize + detailTrisSize;

View File

@ -389,6 +389,45 @@
6B8DE84E10B0584400DF20FB /* PBXTextBookmark */ = 6B8DE84E10B0584400DF20FB /* PBXTextBookmark */;
6B8DE84F10B0584400DF20FB /* PBXTextBookmark */ = 6B8DE84F10B0584400DF20FB /* PBXTextBookmark */;
6B8DE85010B0584400DF20FB /* PBXTextBookmark */ = 6B8DE85010B0584400DF20FB /* PBXTextBookmark */;
6B8DE85110B6873400DF20FB /* PBXTextBookmark */ = 6B8DE85110B6873400DF20FB /* PBXTextBookmark */;
6B8DE85210B6873400DF20FB /* PBXTextBookmark */ = 6B8DE85210B6873400DF20FB /* PBXTextBookmark */;
6B8DE85310B6873400DF20FB /* PBXTextBookmark */ = 6B8DE85310B6873400DF20FB /* PBXTextBookmark */;
6B8DE85410B6873400DF20FB /* PBXTextBookmark */ = 6B8DE85410B6873400DF20FB /* PBXTextBookmark */;
6B8DE85510B6873400DF20FB /* PBXTextBookmark */ = 6B8DE85510B6873400DF20FB /* PBXTextBookmark */;
6B8DE85610B6873400DF20FB /* PBXTextBookmark */ = 6B8DE85610B6873400DF20FB /* PBXTextBookmark */;
6B8DE85710B6873400DF20FB /* PBXTextBookmark */ = 6B8DE85710B6873400DF20FB /* PBXTextBookmark */;
6B8DE85C10B6899100DF20FB /* PBXTextBookmark */ = 6B8DE85C10B6899100DF20FB /* PBXTextBookmark */;
6B8DE85D10B6899100DF20FB /* PBXTextBookmark */ = 6B8DE85D10B6899100DF20FB /* PBXTextBookmark */;
6B8DE85E10B6899100DF20FB /* PBXTextBookmark */ = 6B8DE85E10B6899100DF20FB /* PBXTextBookmark */;
6B8DE85F10B6899100DF20FB /* PBXTextBookmark */ = 6B8DE85F10B6899100DF20FB /* PBXTextBookmark */;
6B8DE86010B6899100DF20FB /* PBXTextBookmark */ = 6B8DE86010B6899100DF20FB /* PBXTextBookmark */;
6B8DE86110B6899100DF20FB /* PBXTextBookmark */ = 6B8DE86110B6899100DF20FB /* PBXTextBookmark */;
6B8DE86210B6899100DF20FB /* PBXTextBookmark */ = 6B8DE86210B6899100DF20FB /* PBXTextBookmark */;
6B8DE86310B6899100DF20FB /* PBXTextBookmark */ = 6B8DE86310B6899100DF20FB /* PBXTextBookmark */;
6B8DE86410B6899100DF20FB /* PBXTextBookmark */ = 6B8DE86410B6899100DF20FB /* PBXTextBookmark */;
6B8DE86510B6899100DF20FB /* PBXTextBookmark */ = 6B8DE86510B6899100DF20FB /* PBXTextBookmark */;
6B8DE86610B6899200DF20FB /* PBXTextBookmark */ = 6B8DE86610B6899200DF20FB /* PBXTextBookmark */;
6B8DE86710B689A400DF20FB /* PBXTextBookmark */ = 6B8DE86710B689A400DF20FB /* PBXTextBookmark */;
6B8DE86B10B68A1300DF20FB /* PBXTextBookmark */ = 6B8DE86B10B68A1300DF20FB /* PBXTextBookmark */;
6B8DE86C10B68A1300DF20FB /* PBXTextBookmark */ = 6B8DE86C10B68A1300DF20FB /* PBXTextBookmark */;
6B8DE86D10B68A1300DF20FB /* PBXTextBookmark */ = 6B8DE86D10B68A1300DF20FB /* PBXTextBookmark */;
6B8DE86E10B68A1300DF20FB /* PBXTextBookmark */ = 6B8DE86E10B68A1300DF20FB /* PBXTextBookmark */;
6B8DE86F10B68A1300DF20FB /* PBXTextBookmark */ = 6B8DE86F10B68A1300DF20FB /* PBXTextBookmark */;
6B8DE87010B68A1300DF20FB /* PBXTextBookmark */ = 6B8DE87010B68A1300DF20FB /* PBXTextBookmark */;
6B8DE87110B68A1300DF20FB /* PBXTextBookmark */ = 6B8DE87110B68A1300DF20FB /* PBXTextBookmark */;
6B8DE87210B68A1300DF20FB /* PBXTextBookmark */ = 6B8DE87210B68A1300DF20FB /* PBXTextBookmark */;
6B8DE87310B68A1300DF20FB /* PBXTextBookmark */ = 6B8DE87310B68A1300DF20FB /* PBXTextBookmark */;
6B8DE87410B68A1300DF20FB /* PBXTextBookmark */ = 6B8DE87410B68A1300DF20FB /* PBXTextBookmark */;
6B8DE87510B68A1300DF20FB /* PBXTextBookmark */ = 6B8DE87510B68A1300DF20FB /* PBXTextBookmark */;
6B8DE87610B68A1300DF20FB /* PBXTextBookmark */ = 6B8DE87610B68A1300DF20FB /* PBXTextBookmark */;
6B8DE87A10B68A7500DF20FB /* PBXTextBookmark */ = 6B8DE87A10B68A7500DF20FB /* PBXTextBookmark */;
6B8DE87B10B68A7500DF20FB /* PBXTextBookmark */ = 6B8DE87B10B68A7500DF20FB /* PBXTextBookmark */;
6B8DE87C10B68A7500DF20FB /* PBXTextBookmark */ = 6B8DE87C10B68A7500DF20FB /* PBXTextBookmark */;
6B8DE87D10B68A7500DF20FB /* PBXTextBookmark */ = 6B8DE87D10B68A7500DF20FB /* PBXTextBookmark */;
6B8DE87E10B68A7500DF20FB /* PBXTextBookmark */ = 6B8DE87E10B68A7500DF20FB /* PBXTextBookmark */;
6B8DE87F10B68A7500DF20FB /* PBXTextBookmark */ = 6B8DE87F10B68A7500DF20FB /* PBXTextBookmark */;
6B8DE88010B68A7500DF20FB /* PBXTextBookmark */ = 6B8DE88010B68A7500DF20FB /* PBXTextBookmark */;
6B8DE88110B68A7500DF20FB /* PBXTextBookmark */ = 6B8DE88110B68A7500DF20FB /* PBXTextBookmark */;
6B9BE374107BC6A40036CC81 = 6B9BE374107BC6A40036CC81 /* PBXTextBookmark */;
};
sourceControlManager = 6B8632A90F78115100E2684A /* Source Control */;
@ -469,16 +508,16 @@
};
6B092B920FFCC2AC0088D3A5 /* DetourTileNavMeshBuilder.h */ = {
uiCtxt = {
sepNavIntBoundsRect = "{{0, 0}, {915, 561}}";
sepNavIntBoundsRect = "{{0, 0}, {915, 489}}";
sepNavSelRange = "{1461, 0}";
sepNavVisRange = "{0, 1461}";
};
};
6B092B930FFCC2BD0088D3A5 /* DetourTileNavMeshBuilder.cpp */ = {
uiCtxt = {
sepNavIntBoundsRect = "{{0, 0}, {915, 3552}}";
sepNavSelRange = "{4329, 0}";
sepNavVisRange = "{2421, 558}";
sepNavIntBoundsRect = "{{0, 0}, {915, 3408}}";
sepNavSelRange = "{995, 0}";
sepNavVisRange = "{0, 1484}";
};
};
6B1185F41006895B0018F96F /* DetourNode.cpp */ = {
@ -497,9 +536,9 @@
};
6B1185FC10068B040018F96F /* DetourCommon.h */ = {
uiCtxt = {
sepNavIntBoundsRect = "{{0, 0}, {915, 2608}}";
sepNavSelRange = "{2070, 0}";
sepNavVisRange = "{1266, 895}";
sepNavIntBoundsRect = "{{0, 0}, {915, 2832}}";
sepNavSelRange = "{3352, 6}";
sepNavVisRange = "{3058, 508}";
};
};
6B1185FD10068B150018F96F /* DetourCommon.cpp */ = {
@ -561,8 +600,8 @@
6B137C7F0F7FCBFE00459200 /* RecastDebugDraw.h */ = {
uiCtxt = {
sepNavIntBoundsRect = "{{0, 0}, {915, 2016}}";
sepNavSelRange = "{1894, 0}";
sepNavVisRange = "{1106, 932}";
sepNavSelRange = "{1492, 0}";
sepNavVisRange = "{1106, 884}";
};
};
6B137C800F7FCBFE00459200 /* RecastLog.h */ = {
@ -596,9 +635,9 @@
};
6B137C840F7FCC1100459200 /* RecastDebugDraw.cpp */ = {
uiCtxt = {
sepNavIntBoundsRect = "{{0, 0}, {922, 14560}}";
sepNavIntBoundsRect = "{{0, 0}, {922, 14512}}";
sepNavSelRange = "{8474, 0}";
sepNavVisRange = "{8355, 697}";
sepNavVisRange = "{0, 1141}";
};
};
6B137C850F7FCC1100459200 /* RecastFilter.cpp */ = {
@ -688,9 +727,9 @@
};
6B25B6180FFA62BE004F1BC4 /* main.cpp */ = {
uiCtxt = {
sepNavIntBoundsRect = "{{0, 0}, {915, 12496}}";
sepNavSelRange = "{933, 0}";
sepNavVisRange = "{688, 503}";
sepNavIntBoundsRect = "{{0, 0}, {915, 12560}}";
sepNavSelRange = "{4378, 0}";
sepNavVisRange = "{3996, 828}";
};
};
6B2AEC510FFB8946005BE9CC /* Sample_TileMesh.h */ = {
@ -731,9 +770,9 @@
};
6B2AEC590FFB8A7A005BE9CC /* DetourTileNavMesh.cpp */ = {
uiCtxt = {
sepNavIntBoundsRect = "{{0, 0}, {915, 22592}}";
sepNavSelRange = "{3280, 0}";
sepNavVisRange = "{3059, 545}";
sepNavIntBoundsRect = "{{0, 0}, {915, 22304}}";
sepNavSelRange = "{9687, 0}";
sepNavVisRange = "{8764, 756}";
};
};
6B3BFADD107A80E1006284CD /* PBXTextBookmark */ = {
@ -761,7 +800,7 @@
fRef = 6BDD9E090F91113800904EEF /* DetourStatNavMeshBuilder.cpp */;
name = "DetourStatNavMeshBuilder.cpp: 102";
rLen = 0;
rLoc = 2718;
rLoc = 2744;
rType = 0;
vrLen = 722;
vrLoc = 2485;
@ -941,9 +980,9 @@
};
6B624169103434880002E346 /* RecastMeshDetail.cpp */ = {
uiCtxt = {
sepNavIntBoundsRect = "{{0, 0}, {915, 19472}}";
sepNavSelRange = "{19126, 16}";
sepNavVisRange = "{18811, 628}";
sepNavIntBoundsRect = "{{0, 0}, {915, 19072}}";
sepNavSelRange = "{16861, 13}";
sepNavVisRange = "{16687, 837}";
sepNavWindowFrame = "{{61, 36}, {1011, 695}}";
};
};
@ -962,7 +1001,7 @@
fRef = 6BDD9E090F91113800904EEF /* DetourStatNavMeshBuilder.cpp */;
name = "DetourStatNavMeshBuilder.cpp: 335";
rLen = 0;
rLoc = 9089;
rLoc = 9171;
rType = 0;
vrLen = 982;
vrLoc = 8278;
@ -972,7 +1011,7 @@
fRef = 6BDD9E080F91113800904EEF /* DetourStatNavMesh.cpp */;
name = "DetourStatNavMesh.cpp: 123";
rLen = 0;
rLoc = 3418;
rLoc = 3474;
rType = 0;
vrLen = 769;
vrLoc = 3281;
@ -1002,7 +1041,7 @@
fRef = 6B2AEC590FFB8A7A005BE9CC /* DetourTileNavMesh.cpp */;
name = "DetourTileNavMesh.cpp: 760";
rLen = 0;
rLoc = 19332;
rLoc = 19388;
rType = 0;
vrLen = 1063;
vrLoc = 18658;
@ -1012,7 +1051,7 @@
fRef = 6BDD9E080F91113800904EEF /* DetourStatNavMesh.cpp */;
name = "DetourStatNavMesh.cpp: 123";
rLen = 0;
rLoc = 3418;
rLoc = 3474;
rType = 0;
vrLen = 769;
vrLoc = 3281;
@ -1112,7 +1151,7 @@
fRef = 6B2AEC590FFB8A7A005BE9CC /* DetourTileNavMesh.cpp */;
name = "DetourTileNavMesh.cpp: 760";
rLen = 0;
rLoc = 19332;
rLoc = 19388;
rType = 0;
vrLen = 923;
vrLoc = 18798;
@ -1212,7 +1251,7 @@
fRef = 6B2AEC590FFB8A7A005BE9CC /* DetourTileNavMesh.cpp */;
name = "DetourTileNavMesh.cpp: 760";
rLen = 0;
rLoc = 19332;
rLoc = 19388;
rType = 0;
vrLen = 923;
vrLoc = 18798;
@ -1337,7 +1376,7 @@
fRef = 6B092B930FFCC2BD0088D3A5 /* DetourTileNavMeshBuilder.cpp */;
name = "DetourTileNavMeshBuilder.cpp: 138";
rLen = 0;
rLoc = 4329;
rLoc = 4385;
rType = 0;
vrLen = 558;
vrLoc = 2421;
@ -1347,7 +1386,7 @@
fRef = 6BDD9E080F91113800904EEF /* DetourStatNavMesh.cpp */;
name = "DetourStatNavMesh.cpp: 188";
rLen = 0;
rLoc = 5305;
rLoc = 5361;
rType = 0;
vrLen = 660;
vrLoc = 4964;
@ -1556,7 +1595,7 @@
fRef = 6BDD9E080F91113800904EEF /* DetourStatNavMesh.cpp */;
name = "DetourStatNavMesh.cpp: 78";
rLen = 11;
rLoc = 2540;
rLoc = 2596;
rType = 0;
vrLen = 689;
vrLoc = 2088;
@ -1586,7 +1625,7 @@
fRef = 6BDD9E080F91113800904EEF /* DetourStatNavMesh.cpp */;
name = "DetourStatNavMesh.cpp: 202";
rLen = 0;
rLoc = 5601;
rLoc = 5657;
rType = 0;
vrLen = 671;
vrLoc = 4954;
@ -1606,7 +1645,7 @@
fRef = 6BDD9E080F91113800904EEF /* DetourStatNavMesh.cpp */;
name = "DetourStatNavMesh.cpp: 180";
rLen = 0;
rLoc = 4964;
rLoc = 5020;
rType = 0;
vrLen = 744;
vrLoc = 4786;
@ -1626,7 +1665,7 @@
fRef = 6BDD9E080F91113800904EEF /* DetourStatNavMesh.cpp */;
name = "DetourStatNavMesh.cpp: 184";
rLen = 0;
rLoc = 5188;
rLoc = 5244;
rType = 0;
vrLen = 802;
vrLoc = 4659;
@ -1646,7 +1685,7 @@
fRef = 6BDD9E080F91113800904EEF /* DetourStatNavMesh.cpp */;
name = "DetourStatNavMesh.cpp: 197";
rLen = 0;
rLoc = 5498;
rLoc = 5554;
rType = 0;
vrLen = 774;
vrLoc = 4694;
@ -1676,7 +1715,7 @@
fRef = 6BDD9E080F91113800904EEF /* DetourStatNavMesh.cpp */;
name = "DetourStatNavMesh.cpp: 74";
rLen = 0;
rLoc = 2518;
rLoc = 2574;
rType = 0;
vrLen = 596;
vrLoc = 2172;
@ -1706,7 +1745,7 @@
fRef = 6B092B930FFCC2BD0088D3A5 /* DetourTileNavMeshBuilder.cpp */;
name = "DetourTileNavMeshBuilder.cpp: 138";
rLen = 0;
rLoc = 4329;
rLoc = 4385;
rType = 0;
vrLen = 558;
vrLoc = 2421;
@ -1726,7 +1765,7 @@
fRef = 6BDD9E080F91113800904EEF /* DetourStatNavMesh.cpp */;
name = "DetourStatNavMesh.cpp: 188";
rLen = 0;
rLoc = 5305;
rLoc = 5361;
rType = 0;
vrLen = 660;
vrLoc = 4964;
@ -3556,6 +3595,394 @@
vrLen = 932;
vrLoc = 1106;
};
6B8DE85110B6873400DF20FB /* PBXTextBookmark */ = {
isa = PBXTextBookmark;
fRef = 6B137C840F7FCC1100459200 /* RecastDebugDraw.cpp */;
name = "RecastDebugDraw.cpp: 312";
rLen = 0;
rLoc = 8474;
rType = 0;
vrLen = 1141;
vrLoc = 0;
};
6B8DE85210B6873400DF20FB /* PBXTextBookmark */ = {
isa = PBXTextBookmark;
fRef = 6B137C7F0F7FCBFE00459200 /* RecastDebugDraw.h */;
name = "RecastDebugDraw.h: 41";
rLen = 0;
rLoc = 1492;
rType = 0;
vrLen = 884;
vrLoc = 1106;
};
6B8DE85310B6873400DF20FB /* PBXTextBookmark */ = {
isa = PBXTextBookmark;
fRef = 6B624169103434880002E346 /* RecastMeshDetail.cpp */;
name = "RecastMeshDetail.cpp: 806";
rLen = 16;
rLoc = 19126;
rType = 0;
vrLen = 729;
vrLoc = 18787;
};
6B8DE85410B6873400DF20FB /* PBXTextBookmark */ = {
isa = PBXTextBookmark;
fRef = 6B137C7F0F7FCBFE00459200 /* RecastDebugDraw.h */;
name = "RecastDebugDraw.h: 37";
rLen = 0;
rLoc = 1360;
rType = 0;
vrLen = 869;
vrLoc = 591;
};
6B8DE85510B6873400DF20FB /* PBXTextBookmark */ = {
isa = PBXTextBookmark;
fRef = 6B137C840F7FCC1100459200 /* RecastDebugDraw.cpp */;
name = "RecastDebugDraw.cpp: 312";
rLen = 0;
rLoc = 8474;
rType = 0;
vrLen = 1141;
vrLoc = 0;
};
6B8DE85610B6873400DF20FB /* PBXTextBookmark */ = {
isa = PBXTextBookmark;
fRef = 6B137C7F0F7FCBFE00459200 /* RecastDebugDraw.h */;
name = "RecastDebugDraw.h: 41";
rLen = 0;
rLoc = 1492;
rType = 0;
vrLen = 884;
vrLoc = 1106;
};
6B8DE85710B6873400DF20FB /* PBXTextBookmark */ = {
isa = PBXTextBookmark;
fRef = 6B624169103434880002E346 /* RecastMeshDetail.cpp */;
name = "RecastMeshDetail.cpp: 869";
rLen = 0;
rLoc = 20381;
rType = 0;
vrLen = 673;
vrLoc = 20111;
};
6B8DE85C10B6899100DF20FB /* PBXTextBookmark */ = {
isa = PBXTextBookmark;
fRef = 6B624169103434880002E346 /* RecastMeshDetail.cpp */;
name = "RecastMeshDetail.cpp: 708";
rLen = 13;
rLoc = 16861;
rType = 0;
vrLen = 837;
vrLoc = 16687;
};
6B8DE85D10B6899100DF20FB /* PBXTextBookmark */ = {
isa = PBXTextBookmark;
fRef = 6BDD9E060F91112200904EEF /* DetourStatNavMeshBuilder.h */;
name = "DetourStatNavMeshBuilder.h: 17";
rLen = 0;
rLoc = 917;
rType = 0;
vrLen = 1416;
vrLoc = 0;
};
6B8DE85E10B6899100DF20FB /* PBXTextBookmark */ = {
isa = PBXTextBookmark;
fRef = 6BDD9E090F91113800904EEF /* DetourStatNavMeshBuilder.cpp */;
name = "DetourStatNavMeshBuilder.cpp: 104";
rLen = 0;
rLoc = 2747;
rType = 0;
vrLen = 791;
vrLoc = 5133;
};
6B8DE85F10B6899100DF20FB /* PBXTextBookmark */ = {
isa = PBXTextBookmark;
fRef = 6B1185FC10068B040018F96F /* DetourCommon.h */;
name = "DetourCommon.h: 128";
rLen = 48;
rLoc = 3341;
rType = 0;
vrLen = 508;
vrLoc = 3058;
};
6B8DE86010B6899100DF20FB /* PBXTextBookmark */ = {
isa = PBXTextBookmark;
fRef = 6B25B6180FFA62BE004F1BC4 /* main.cpp */;
name = "main.cpp: 55";
rLen = 0;
rLoc = 933;
rType = 0;
vrLen = 487;
vrLoc = 688;
};
6B8DE86110B6899100DF20FB /* PBXTextBookmark */ = {
isa = PBXTextBookmark;
fRef = 6B624169103434880002E346 /* RecastMeshDetail.cpp */;
name = "RecastMeshDetail.cpp: 708";
rLen = 13;
rLoc = 16861;
rType = 0;
vrLen = 837;
vrLoc = 16687;
};
6B8DE86210B6899100DF20FB /* PBXTextBookmark */ = {
isa = PBXTextBookmark;
fRef = 6BDD9E060F91112200904EEF /* DetourStatNavMeshBuilder.h */;
name = "DetourStatNavMeshBuilder.h: 17";
rLen = 0;
rLoc = 917;
rType = 0;
vrLen = 1416;
vrLoc = 0;
};
6B8DE86310B6899100DF20FB /* PBXTextBookmark */ = {
isa = PBXTextBookmark;
fRef = 6BDD9E090F91113800904EEF /* DetourStatNavMeshBuilder.cpp */;
name = "DetourStatNavMeshBuilder.cpp: 104";
rLen = 0;
rLoc = 2747;
rType = 0;
vrLen = 791;
vrLoc = 5133;
};
6B8DE86410B6899100DF20FB /* PBXTextBookmark */ = {
isa = PBXTextBookmark;
fRef = 6B1185FC10068B040018F96F /* DetourCommon.h */;
name = "DetourCommon.h: 128";
rLen = 48;
rLoc = 3341;
rType = 0;
vrLen = 508;
vrLoc = 3058;
};
6B8DE86510B6899100DF20FB /* PBXTextBookmark */ = {
isa = PBXTextBookmark;
fRef = 6B25B6180FFA62BE004F1BC4 /* main.cpp */;
name = "main.cpp: 216";
rLen = 0;
rLoc = 4378;
rType = 0;
vrLen = 634;
vrLoc = 3996;
};
6B8DE86610B6899200DF20FB /* PBXTextBookmark */ = {
isa = PBXTextBookmark;
fRef = 6B25B6180FFA62BE004F1BC4 /* main.cpp */;
name = "main.cpp: 213";
rLen = 0;
rLoc = 4378;
rType = 0;
vrLen = 636;
vrLoc = 3996;
};
6B8DE86710B689A400DF20FB /* PBXTextBookmark */ = {
isa = PBXTextBookmark;
fRef = 6B25B6180FFA62BE004F1BC4 /* main.cpp */;
name = "main.cpp: 213";
rLen = 0;
rLoc = 4378;
rType = 0;
vrLen = 242;
vrLoc = 4273;
};
6B8DE86B10B68A1300DF20FB /* PBXTextBookmark */ = {
isa = PBXTextBookmark;
fRef = 6B25B6180FFA62BE004F1BC4 /* main.cpp */;
name = "main.cpp: 211";
rLen = 0;
rLoc = 4378;
rType = 0;
vrLen = 828;
vrLoc = 3996;
};
6B8DE86C10B68A1300DF20FB /* PBXTextBookmark */ = {
isa = PBXTextBookmark;
fRef = 6B1185FC10068B040018F96F /* DetourCommon.h */;
name = "DetourCommon.h: 128";
rLen = 6;
rLoc = 3352;
rType = 0;
vrLen = 508;
vrLoc = 3058;
};
6B8DE86D10B68A1300DF20FB /* PBXTextBookmark */ = {
isa = PBXTextBookmark;
fRef = 6BDD9E060F91112200904EEF /* DetourStatNavMeshBuilder.h */;
name = "DetourStatNavMeshBuilder.h: 17";
rLen = 0;
rLoc = 917;
rType = 0;
vrLen = 1416;
vrLoc = 0;
};
6B8DE86E10B68A1300DF20FB /* PBXTextBookmark */ = {
isa = PBXTextBookmark;
fRef = 6BDD9E080F91113800904EEF /* DetourStatNavMesh.cpp */;
name = "DetourStatNavMesh.cpp: 52";
rLen = 0;
rLoc = 1622;
rType = 0;
vrLen = 1211;
vrLoc = 1367;
};
6B8DE86F10B68A1300DF20FB /* PBXTextBookmark */ = {
isa = PBXTextBookmark;
comments = "error: 'align4' was not declared in this scope";
fRef = 6BDD9E090F91113800904EEF /* DetourStatNavMeshBuilder.cpp */;
rLen = 1;
rLoc = 248;
rType = 1;
};
6B8DE87010B68A1300DF20FB /* PBXTextBookmark */ = {
isa = PBXTextBookmark;
fRef = 6B25B6180FFA62BE004F1BC4 /* main.cpp */;
name = "main.cpp: 211";
rLen = 0;
rLoc = 4378;
rType = 0;
vrLen = 828;
vrLoc = 3996;
};
6B8DE87110B68A1300DF20FB /* PBXTextBookmark */ = {
isa = PBXTextBookmark;
fRef = 6B1185FC10068B040018F96F /* DetourCommon.h */;
name = "DetourCommon.h: 128";
rLen = 6;
rLoc = 3352;
rType = 0;
vrLen = 508;
vrLoc = 3058;
};
6B8DE87210B68A1300DF20FB /* PBXTextBookmark */ = {
isa = PBXTextBookmark;
fRef = 6BDD9E090F91113800904EEF /* DetourStatNavMeshBuilder.cpp */;
name = "DetourStatNavMeshBuilder.cpp: 104";
rLen = 0;
rLoc = 2747;
rType = 0;
vrLen = 791;
vrLoc = 5133;
};
6B8DE87310B68A1300DF20FB /* PBXTextBookmark */ = {
isa = PBXTextBookmark;
fRef = 6BDD9E060F91112200904EEF /* DetourStatNavMeshBuilder.h */;
name = "DetourStatNavMeshBuilder.h: 17";
rLen = 0;
rLoc = 917;
rType = 0;
vrLen = 1416;
vrLoc = 0;
};
6B8DE87410B68A1300DF20FB /* PBXTextBookmark */ = {
isa = PBXTextBookmark;
fRef = 6BDD9E090F91113800904EEF /* DetourStatNavMeshBuilder.cpp */;
name = "DetourStatNavMeshBuilder.cpp: 251";
rLen = 0;
rLoc = 6446;
rType = 0;
vrLen = 1283;
vrLoc = 6183;
};
6B8DE87510B68A1300DF20FB /* PBXTextBookmark */ = {
isa = PBXTextBookmark;
fRef = 6BDD9E080F91113800904EEF /* DetourStatNavMesh.cpp */;
name = "DetourStatNavMesh.cpp: 52";
rLen = 0;
rLoc = 1622;
rType = 0;
vrLen = 1211;
vrLoc = 1367;
};
6B8DE87610B68A1300DF20FB /* PBXTextBookmark */ = {
isa = PBXTextBookmark;
fRef = 6BDD9E090F91113800904EEF /* DetourStatNavMeshBuilder.cpp */;
name = "DetourStatNavMeshBuilder.cpp: 23";
rLen = 0;
rLoc = 1025;
rType = 0;
vrLen = 1112;
vrLoc = 0;
};
6B8DE87A10B68A7500DF20FB /* PBXTextBookmark */ = {
isa = PBXTextBookmark;
fRef = 6BDD9E090F91113800904EEF /* DetourStatNavMeshBuilder.cpp */;
name = "DetourStatNavMeshBuilder.cpp: 23";
rLen = 0;
rLoc = 1025;
rType = 0;
vrLen = 1113;
vrLoc = 0;
};
6B8DE87B10B68A7500DF20FB /* PBXTextBookmark */ = {
isa = PBXTextBookmark;
fRef = 6B092B920FFCC2AC0088D3A5 /* DetourTileNavMeshBuilder.h */;
name = "DetourTileNavMeshBuilder.h: 29";
rLen = 0;
rLoc = 1461;
rType = 0;
vrLen = 1461;
vrLoc = 0;
};
6B8DE87C10B68A7500DF20FB /* PBXTextBookmark */ = {
isa = PBXTextBookmark;
fRef = 6B092B930FFCC2BD0088D3A5 /* DetourTileNavMeshBuilder.cpp */;
name = "DetourTileNavMeshBuilder.cpp: 22";
rLen = 0;
rLoc = 995;
rType = 0;
vrLen = 1484;
vrLoc = 0;
};
6B8DE87D10B68A7500DF20FB /* PBXTextBookmark */ = {
isa = PBXTextBookmark;
fRef = 6B2AEC590FFB8A7A005BE9CC /* DetourTileNavMesh.cpp */;
name = "DetourTileNavMesh.cpp: 112";
rLen = 0;
rLoc = 3280;
rType = 0;
vrLen = 661;
vrLoc = 3017;
};
6B8DE87E10B68A7500DF20FB /* PBXTextBookmark */ = {
isa = PBXTextBookmark;
fRef = 6BDD9E090F91113800904EEF /* DetourStatNavMeshBuilder.cpp */;
name = "DetourStatNavMeshBuilder.cpp: 23";
rLen = 0;
rLoc = 1025;
rType = 0;
vrLen = 1113;
vrLoc = 0;
};
6B8DE87F10B68A7500DF20FB /* PBXTextBookmark */ = {
isa = PBXTextBookmark;
fRef = 6B092B920FFCC2AC0088D3A5 /* DetourTileNavMeshBuilder.h */;
name = "DetourTileNavMeshBuilder.h: 29";
rLen = 0;
rLoc = 1461;
rType = 0;
vrLen = 1461;
vrLoc = 0;
};
6B8DE88010B68A7500DF20FB /* PBXTextBookmark */ = {
isa = PBXTextBookmark;
fRef = 6B092B930FFCC2BD0088D3A5 /* DetourTileNavMeshBuilder.cpp */;
name = "DetourTileNavMeshBuilder.cpp: 22";
rLen = 0;
rLoc = 995;
rType = 0;
vrLen = 1484;
vrLoc = 0;
};
6B8DE88110B68A7500DF20FB /* PBXTextBookmark */ = {
isa = PBXTextBookmark;
fRef = 6B2AEC590FFB8A7A005BE9CC /* DetourTileNavMesh.cpp */;
name = "DetourTileNavMesh.cpp: 360";
rLen = 0;
rLoc = 9687;
rType = 0;
vrLen = 756;
vrLoc = 8764;
};
6B9301521032F08300F0C0DA /* Recast.cpp:280 */ = {
isa = PBXFileBreakpoint;
actions = (
@ -3670,8 +4097,8 @@
};
6BDD9E060F91112200904EEF /* DetourStatNavMeshBuilder.h */ = {
uiCtxt = {
sepNavIntBoundsRect = "{{0, 0}, {915, 520}}";
sepNavSelRange = "{1328, 0}";
sepNavIntBoundsRect = "{{0, 0}, {915, 489}}";
sepNavSelRange = "{917, 0}";
sepNavVisRange = "{0, 1416}";
};
};
@ -3684,16 +4111,16 @@
};
6BDD9E080F91113800904EEF /* DetourStatNavMesh.cpp */ = {
uiCtxt = {
sepNavIntBoundsRect = "{{0, 0}, {915, 13952}}";
sepNavSelRange = "{5305, 0}";
sepNavVisRange = "{4964, 660}";
sepNavIntBoundsRect = "{{0, 0}, {915, 13584}}";
sepNavSelRange = "{1622, 0}";
sepNavVisRange = "{1367, 1211}";
};
};
6BDD9E090F91113800904EEF /* DetourStatNavMeshBuilder.cpp */ = {
uiCtxt = {
sepNavIntBoundsRect = "{{0, 0}, {1219, 5632}}";
sepNavSelRange = "{1820, 0}";
sepNavVisRange = "{2705, 359}";
sepNavIntBoundsRect = "{{0, 0}, {915, 5568}}";
sepNavSelRange = "{1025, 0}";
sepNavVisRange = "{0, 1113}";
sepNavWindowFrame = "{{15, 78}, {1011, 695}}";
};
};

View File

@ -279,14 +279,14 @@
<key>PBXSmartGroupTreeModuleOutlineStateSelectionKey</key>
<array>
<array>
<integer>29</integer>
<integer>18</integer>
<integer>11</integer>
<integer>3</integer>
<integer>1</integer>
<integer>0</integer>
</array>
</array>
<key>PBXSmartGroupTreeModuleOutlineStateVisibleRectKey</key>
<string>{{0, 49}, {282, 660}}</string>
<string>{{0, 35}, {282, 660}}</string>
</dict>
<key>PBXTopSmartGroupGIDs</key>
<array/>
@ -321,7 +321,7 @@
<key>PBXProjectModuleGUID</key>
<string>6B8632A30F78115100E2684A</string>
<key>PBXProjectModuleLabel</key>
<string>RecastDebugDraw.h</string>
<string>DetourTileNavMesh.cpp</string>
<key>PBXSplitModuleInNavigatorKey</key>
<dict>
<key>Split0</key>
@ -329,28 +329,23 @@
<key>PBXProjectModuleGUID</key>
<string>6B8632A40F78115100E2684A</string>
<key>PBXProjectModuleLabel</key>
<string>RecastDebugDraw.h</string>
<string>DetourTileNavMesh.cpp</string>
<key>_historyCapacity</key>
<integer>0</integer>
<key>bookmark</key>
<string>6B8DE85010B0584400DF20FB</string>
<string>6B8DE88110B68A7500DF20FB</string>
<key>history</key>
<array>
<string>6B3BFADD107A80E1006284CD</string>
<string>6B3BFB0C107A8979006284CD</string>
<string>6B3BFB0D107A8979006284CD</string>
<string>6B57D358108C66B200DDD053</string>
<string>6B57D38F108C69E400DDD053</string>
<string>6B7FB74D1091EBDE001BA51A</string>
<string>6B8DE6FE10B01BBF00DF20FB</string>
<string>6B8DE6FF10B01BBF00DF20FB</string>
<string>6B8DE70110B01BBF00DF20FB</string>
<string>6B8DE70310B01BBF00DF20FB</string>
<string>6B8DE70410B01BBF00DF20FB</string>
<string>6B8DE70510B01BBF00DF20FB</string>
<string>6B8DE70610B01BBF00DF20FB</string>
<string>6B8DE70710B01BBF00DF20FB</string>
<string>6B8DE70910B01BBF00DF20FB</string>
<string>6B8DE70A10B01BBF00DF20FB</string>
<string>6B8DE70B10B01BBF00DF20FB</string>
<string>6B8DE70D10B01BBF00DF20FB</string>
@ -364,10 +359,19 @@
<string>6B8DE7F810B0517A00DF20FB</string>
<string>6B8DE81F10B0528100DF20FB</string>
<string>6B8DE82010B0528100DF20FB</string>
<string>6B8DE84810B0584400DF20FB</string>
<string>6B8DE84910B0584400DF20FB</string>
<string>6B8DE84A10B0584400DF20FB</string>
<string>6B8DE84B10B0584400DF20FB</string>
<string>6B8DE85110B6873400DF20FB</string>
<string>6B8DE85210B6873400DF20FB</string>
<string>6B8DE85C10B6899100DF20FB</string>
<string>6B8DE86B10B68A1300DF20FB</string>
<string>6B8DE86C10B68A1300DF20FB</string>
<string>6B8DE86D10B68A1300DF20FB</string>
<string>6B8DE86E10B68A1300DF20FB</string>
<string>6B8DE87A10B68A7500DF20FB</string>
<string>6B8DE87B10B68A7500DF20FB</string>
<string>6B8DE87C10B68A7500DF20FB</string>
<string>6B8DE87D10B68A7500DF20FB</string>
</array>
<key>prevStack</key>
<array>
@ -486,6 +490,22 @@
<string>6B8DE84D10B0584400DF20FB</string>
<string>6B8DE84E10B0584400DF20FB</string>
<string>6B8DE84F10B0584400DF20FB</string>
<string>6B8DE85410B6873400DF20FB</string>
<string>6B8DE85510B6873400DF20FB</string>
<string>6B8DE85610B6873400DF20FB</string>
<string>6B8DE86110B6899100DF20FB</string>
<string>6B8DE86210B6899100DF20FB</string>
<string>6B8DE86310B6899100DF20FB</string>
<string>6B8DE86410B6899100DF20FB</string>
<string>6B8DE87010B68A1300DF20FB</string>
<string>6B8DE87110B68A1300DF20FB</string>
<string>6B8DE87210B68A1300DF20FB</string>
<string>6B8DE87310B68A1300DF20FB</string>
<string>6B8DE87410B68A1300DF20FB</string>
<string>6B8DE87510B68A1300DF20FB</string>
<string>6B8DE87E10B68A7500DF20FB</string>
<string>6B8DE87F10B68A7500DF20FB</string>
<string>6B8DE88010B68A7500DF20FB</string>
</array>
</dict>
<key>SplitCount</key>
@ -499,18 +519,18 @@
<key>GeometryConfiguration</key>
<dict>
<key>Frame</key>
<string>{{0, 0}, {976, 456}}</string>
<string>{{0, 0}, {976, 521}}</string>
<key>RubberWindowFrame</key>
<string>0 59 1280 719 0 0 1280 778 </string>
</dict>
<key>Module</key>
<string>PBXNavigatorGroup</string>
<key>Proportion</key>
<string>456pt</string>
<string>521pt</string>
</dict>
<dict>
<key>Proportion</key>
<string>217pt</string>
<string>152pt</string>
<key>Tabs</key>
<array>
<dict>
@ -578,7 +598,7 @@
<key>GeometryConfiguration</key>
<dict>
<key>Frame</key>
<string>{{10, 27}, {976, 190}}</string>
<string>{{10, 27}, {976, 125}}</string>
<key>RubberWindowFrame</key>
<string>0 59 1280 719 0 0 1280 778 </string>
</dict>
@ -661,12 +681,12 @@
<key>GeometryConfiguration</key>
<dict>
<key>Frame</key>
<string>{{0, 0}, {1280, 233}}</string>
<string>{{0, 0}, {1280, 305}}</string>
</dict>
<key>Module</key>
<string>PBXDebugCLIModule</string>
<key>Proportion</key>
<string>233pt</string>
<string>305pt</string>
</dict>
<dict>
<key>ContentConfiguration</key>
@ -685,8 +705,8 @@
<string>yes</string>
<key>sizes</key>
<array>
<string>{{0, 0}, {620, 161}}</string>
<string>{{620, 0}, {660, 161}}</string>
<string>{{0, 0}, {620, 135}}</string>
<string>{{620, 0}, {660, 135}}</string>
</array>
</dict>
<key>VerticalSplitView</key>
@ -701,8 +721,8 @@
<string>yes</string>
<key>sizes</key>
<array>
<string>{{0, 0}, {1280, 161}}</string>
<string>{{0, 161}, {1280, 279}}</string>
<string>{{0, 0}, {1280, 135}}</string>
<string>{{0, 135}, {1280, 233}}</string>
</array>
</dict>
</dict>
@ -722,7 +742,7 @@
<key>DebugSTDIOWindowFrame</key>
<string>{{200, 200}, {500, 300}}</string>
<key>Frame</key>
<string>{{0, 238}, {1280, 440}}</string>
<string>{{0, 310}, {1280, 368}}</string>
<key>PBXDebugSessionStackFrameViewKey</key>
<dict>
<key>DebugVariablesTableConfiguration</key>
@ -735,13 +755,13 @@
<real>430</real>
</array>
<key>Frame</key>
<string>{{620, 0}, {660, 161}}</string>
<string>{{620, 0}, {660, 135}}</string>
</dict>
</dict>
<key>Module</key>
<string>PBXDebugSessionModule</string>
<key>Proportion</key>
<string>440pt</string>
<string>368pt</string>
</dict>
</array>
<key>Name</key>