diff --git a/Detour/Include/DetourCommon.h b/Detour/Include/DetourCommon.h index d824efc..1881d80 100644 --- a/Detour/Include/DetourCommon.h +++ b/Detour/Include/DetourCommon.h @@ -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]; diff --git a/Detour/Source/DetourStatNavMesh.cpp b/Detour/Source/DetourStatNavMesh.cpp index bf59cd8..a0ce9e8 100755 --- a/Detour/Source/DetourStatNavMesh.cpp +++ b/Detour/Source/DetourStatNavMesh.cpp @@ -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; diff --git a/Detour/Source/DetourStatNavMeshBuilder.cpp b/Detour/Source/DetourStatNavMeshBuilder.cpp index 059f14e..ea88944 100755 --- a/Detour/Source/DetourStatNavMeshBuilder.cpp +++ b/Detour/Source/DetourStatNavMeshBuilder.cpp @@ -19,6 +19,7 @@ #include #include #include +#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; diff --git a/Detour/Source/DetourTileNavMesh.cpp b/Detour/Source/DetourTileNavMesh.cpp index 64c6753..4e4ff8f 100644 --- a/Detour/Source/DetourTileNavMesh.cpp +++ b/Detour/Source/DetourTileNavMesh.cpp @@ -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; diff --git a/Detour/Source/DetourTileNavMeshBuilder.cpp b/Detour/Source/DetourTileNavMeshBuilder.cpp index c55a270..7010976 100644 --- a/Detour/Source/DetourTileNavMeshBuilder.cpp +++ b/Detour/Source/DetourTileNavMeshBuilder.cpp @@ -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; diff --git a/RecastDemo/Bin/Recast.app/Contents/MacOS/Recast b/RecastDemo/Bin/Recast.app/Contents/MacOS/Recast index 0bd308c..79c9ca9 100755 Binary files a/RecastDemo/Bin/Recast.app/Contents/MacOS/Recast and b/RecastDemo/Bin/Recast.app/Contents/MacOS/Recast differ diff --git a/RecastDemo/Build/Xcode/Recast.xcodeproj/memon.pbxuser b/RecastDemo/Build/Xcode/Recast.xcodeproj/memon.pbxuser index d374f14..bf37f1f 100644 --- a/RecastDemo/Build/Xcode/Recast.xcodeproj/memon.pbxuser +++ b/RecastDemo/Build/Xcode/Recast.xcodeproj/memon.pbxuser @@ -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}}"; }; }; diff --git a/RecastDemo/Build/Xcode/Recast.xcodeproj/memon.perspectivev3 b/RecastDemo/Build/Xcode/Recast.xcodeproj/memon.perspectivev3 index 6badeec..1da5978 100644 --- a/RecastDemo/Build/Xcode/Recast.xcodeproj/memon.perspectivev3 +++ b/RecastDemo/Build/Xcode/Recast.xcodeproj/memon.perspectivev3 @@ -279,14 +279,14 @@ PBXSmartGroupTreeModuleOutlineStateSelectionKey - 29 - 18 + 11 + 3 1 0 PBXSmartGroupTreeModuleOutlineStateVisibleRectKey - {{0, 49}, {282, 660}} + {{0, 35}, {282, 660}} PBXTopSmartGroupGIDs @@ -321,7 +321,7 @@ PBXProjectModuleGUID 6B8632A30F78115100E2684A PBXProjectModuleLabel - RecastDebugDraw.h + DetourTileNavMesh.cpp PBXSplitModuleInNavigatorKey Split0 @@ -329,28 +329,23 @@ PBXProjectModuleGUID 6B8632A40F78115100E2684A PBXProjectModuleLabel - RecastDebugDraw.h + DetourTileNavMesh.cpp _historyCapacity 0 bookmark - 6B8DE85010B0584400DF20FB + 6B8DE88110B68A7500DF20FB history 6B3BFADD107A80E1006284CD - 6B3BFB0C107A8979006284CD 6B3BFB0D107A8979006284CD 6B57D358108C66B200DDD053 6B57D38F108C69E400DDD053 6B7FB74D1091EBDE001BA51A 6B8DE6FE10B01BBF00DF20FB - 6B8DE6FF10B01BBF00DF20FB 6B8DE70110B01BBF00DF20FB 6B8DE70310B01BBF00DF20FB 6B8DE70410B01BBF00DF20FB - 6B8DE70510B01BBF00DF20FB - 6B8DE70610B01BBF00DF20FB 6B8DE70710B01BBF00DF20FB - 6B8DE70910B01BBF00DF20FB 6B8DE70A10B01BBF00DF20FB 6B8DE70B10B01BBF00DF20FB 6B8DE70D10B01BBF00DF20FB @@ -364,10 +359,19 @@ 6B8DE7F810B0517A00DF20FB 6B8DE81F10B0528100DF20FB 6B8DE82010B0528100DF20FB - 6B8DE84810B0584400DF20FB 6B8DE84910B0584400DF20FB 6B8DE84A10B0584400DF20FB - 6B8DE84B10B0584400DF20FB + 6B8DE85110B6873400DF20FB + 6B8DE85210B6873400DF20FB + 6B8DE85C10B6899100DF20FB + 6B8DE86B10B68A1300DF20FB + 6B8DE86C10B68A1300DF20FB + 6B8DE86D10B68A1300DF20FB + 6B8DE86E10B68A1300DF20FB + 6B8DE87A10B68A7500DF20FB + 6B8DE87B10B68A7500DF20FB + 6B8DE87C10B68A7500DF20FB + 6B8DE87D10B68A7500DF20FB prevStack @@ -486,6 +490,22 @@ 6B8DE84D10B0584400DF20FB 6B8DE84E10B0584400DF20FB 6B8DE84F10B0584400DF20FB + 6B8DE85410B6873400DF20FB + 6B8DE85510B6873400DF20FB + 6B8DE85610B6873400DF20FB + 6B8DE86110B6899100DF20FB + 6B8DE86210B6899100DF20FB + 6B8DE86310B6899100DF20FB + 6B8DE86410B6899100DF20FB + 6B8DE87010B68A1300DF20FB + 6B8DE87110B68A1300DF20FB + 6B8DE87210B68A1300DF20FB + 6B8DE87310B68A1300DF20FB + 6B8DE87410B68A1300DF20FB + 6B8DE87510B68A1300DF20FB + 6B8DE87E10B68A7500DF20FB + 6B8DE87F10B68A7500DF20FB + 6B8DE88010B68A7500DF20FB SplitCount @@ -499,18 +519,18 @@ GeometryConfiguration Frame - {{0, 0}, {976, 456}} + {{0, 0}, {976, 521}} RubberWindowFrame 0 59 1280 719 0 0 1280 778 Module PBXNavigatorGroup Proportion - 456pt + 521pt Proportion - 217pt + 152pt Tabs @@ -578,7 +598,7 @@ GeometryConfiguration Frame - {{10, 27}, {976, 190}} + {{10, 27}, {976, 125}} RubberWindowFrame 0 59 1280 719 0 0 1280 778 @@ -661,12 +681,12 @@ GeometryConfiguration Frame - {{0, 0}, {1280, 233}} + {{0, 0}, {1280, 305}} Module PBXDebugCLIModule Proportion - 233pt + 305pt ContentConfiguration @@ -685,8 +705,8 @@ yes sizes - {{0, 0}, {620, 161}} - {{620, 0}, {660, 161}} + {{0, 0}, {620, 135}} + {{620, 0}, {660, 135}} VerticalSplitView @@ -701,8 +721,8 @@ yes sizes - {{0, 0}, {1280, 161}} - {{0, 161}, {1280, 279}} + {{0, 0}, {1280, 135}} + {{0, 135}, {1280, 233}} @@ -722,7 +742,7 @@ DebugSTDIOWindowFrame {{200, 200}, {500, 300}} Frame - {{0, 238}, {1280, 440}} + {{0, 310}, {1280, 368}} PBXDebugSessionStackFrameViewKey DebugVariablesTableConfiguration @@ -735,13 +755,13 @@ 430 Frame - {{620, 0}, {660, 161}} + {{620, 0}, {660, 135}} Module PBXDebugSessionModule Proportion - 440pt + 368pt Name