diff --git a/DebugUtils/Include/DetourDebugDraw.h b/DebugUtils/Include/DetourDebugDraw.h index 4eaf2f6..d0d1d5d 100755 --- a/DebugUtils/Include/DetourDebugDraw.h +++ b/DebugUtils/Include/DetourDebugDraw.h @@ -25,6 +25,7 @@ enum DrawNavMeshFlags { DU_DRAWNAVMESH_OFFMESHCONS = 0x01, + DU_DRAWNAVMESH_CLOSEDLIST = 0x02, }; void duDebugDrawNavMesh(struct duDebugDraw* dd, const dtNavMesh& mesh, unsigned char flags); diff --git a/DebugUtils/Source/DetourDebugDraw.cpp b/DebugUtils/Source/DetourDebugDraw.cpp index dd7965f..3a117e6 100755 --- a/DebugUtils/Source/DetourDebugDraw.cpp +++ b/DebugUtils/Source/DetourDebugDraw.cpp @@ -248,12 +248,14 @@ void duDebugDrawNavMesh(duDebugDraw* dd, const dtNavMesh& mesh, unsigned char fl void duDebugDrawNavMeshWithClosedList(struct duDebugDraw* dd, const dtNavMesh& mesh, const dtNavMeshQuery& query, unsigned char flags) { if (!dd) return; + + const dtNavMeshQuery* q = (flags & DU_DRAWNAVMESH_CLOSEDLIST) ? &query : 0; for (int i = 0; i < mesh.getMaxTiles(); ++i) { const dtMeshTile* tile = mesh.getTile(i); if (!tile->header) continue; - drawMeshTile(dd, mesh, &query, tile, flags); + drawMeshTile(dd, mesh, q, tile, flags); } } diff --git a/RecastDemo/Bin/Recast.app/Contents/MacOS/Recast b/RecastDemo/Bin/Recast.app/Contents/MacOS/Recast index debafc2..e4de541 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 ed56429..f59bf87 100644 --- a/RecastDemo/Build/Xcode/Recast.xcodeproj/memon.pbxuser +++ b/RecastDemo/Build/Xcode/Recast.xcodeproj/memon.pbxuser @@ -17,15 +17,17 @@ ); breakpoints = ( 6BBB4C4C115B7BAD00CF791D /* Sample_TileMesh.cpp:279 */, - 6B42164711806B2F006C347B /* DetourDebugDraw.cpp:360 */, + 6B42164711806B2F006C347B /* DetourDebugDraw.cpp:362 */, 6B10014C11AD1C1E0098A59A /* RecastMesh.cpp:1324 */, 6BA687AC1222F7AC00730711 /* Sample_Debug.cpp:137 */, - 6BD403421224642500995864 /* NavMeshTesterTool.cpp:580 */, + 6BD403421224642500995864 /* NavMeshTesterTool.cpp:541 */, 6B920A121225B1C900D5B5AD /* DetourHashLookup.cpp:78 */, 6B920A141225B1CF00D5B5AD /* DetourHashLookup.cpp:131 */, - 6BD66851124350F50021A7A4 /* NavMeshTesterTool.cpp:519 */, + 6BD66851124350F50021A7A4 /* NavMeshTesterTool.cpp:480 */, 6BBB03061247344B00533229 /* CrowdManager.cpp:592 */, 6BBB03361247383D00533229 /* CrowdManager.cpp:217 */, + 6BA8CF5E1255D4AC00272A3B /* DetourDebugDraw.cpp:252 */, + 6BA8CF601255D4C500272A3B /* Sample.cpp:45 */, ); codeSenseManager = 6B8632AA0F78115100E2684A /* Code sense */; executables = ( @@ -228,6 +230,44 @@ 6BA8CF431255D16D00272A3B /* PBXTextBookmark */ = 6BA8CF431255D16D00272A3B /* PBXTextBookmark */; 6BA8CF441255D16D00272A3B /* PBXTextBookmark */ = 6BA8CF441255D16D00272A3B /* PBXTextBookmark */; 6BA8CF451255D17A00272A3B /* PBXTextBookmark */ = 6BA8CF451255D17A00272A3B /* PBXTextBookmark */; + 6BA8CF4A1255D44700272A3B /* PBXTextBookmark */ = 6BA8CF4A1255D44700272A3B /* PBXTextBookmark */; + 6BA8CF4B1255D44700272A3B /* PBXTextBookmark */ = 6BA8CF4B1255D44700272A3B /* PBXTextBookmark */; + 6BA8CF4C1255D44700272A3B /* PBXTextBookmark */ = 6BA8CF4C1255D44700272A3B /* PBXTextBookmark */; + 6BA8CF4D1255D44700272A3B /* PBXTextBookmark */ = 6BA8CF4D1255D44700272A3B /* PBXTextBookmark */; + 6BA8CF4E1255D44700272A3B /* PBXTextBookmark */ = 6BA8CF4E1255D44700272A3B /* PBXTextBookmark */; + 6BA8CF4F1255D44700272A3B /* PBXTextBookmark */ = 6BA8CF4F1255D44700272A3B /* PBXTextBookmark */; + 6BA8CF501255D44700272A3B /* PBXTextBookmark */ = 6BA8CF501255D44700272A3B /* PBXTextBookmark */; + 6BA8CF511255D44700272A3B /* PBXTextBookmark */ = 6BA8CF511255D44700272A3B /* PBXTextBookmark */; + 6BA8CF521255D44700272A3B /* PBXTextBookmark */ = 6BA8CF521255D44700272A3B /* PBXTextBookmark */; + 6BA8CF531255D44700272A3B /* PBXTextBookmark */ = 6BA8CF531255D44700272A3B /* PBXTextBookmark */; + 6BA8CF541255D44700272A3B /* PBXTextBookmark */ = 6BA8CF541255D44700272A3B /* PBXTextBookmark */; + 6BA8CF551255D44700272A3B /* PBXTextBookmark */ = 6BA8CF551255D44700272A3B /* PBXTextBookmark */; + 6BA8CF591255D49B00272A3B /* PBXTextBookmark */ = 6BA8CF591255D49B00272A3B /* PBXTextBookmark */; + 6BA8CF5A1255D49B00272A3B /* PBXTextBookmark */ = 6BA8CF5A1255D49B00272A3B /* PBXTextBookmark */; + 6BA8CF5B1255D49B00272A3B /* PBXTextBookmark */ = 6BA8CF5B1255D49B00272A3B /* PBXTextBookmark */; + 6BA8CF5C1255D49B00272A3B /* PBXTextBookmark */ = 6BA8CF5C1255D49B00272A3B /* PBXTextBookmark */; + 6BA8CF641255D4CE00272A3B /* PBXTextBookmark */ = 6BA8CF641255D4CE00272A3B /* PBXTextBookmark */; + 6BA8CF651255D4CE00272A3B /* PBXTextBookmark */ = 6BA8CF651255D4CE00272A3B /* PBXTextBookmark */; + 6BA8CF661255D4CE00272A3B /* PBXTextBookmark */ = 6BA8CF661255D4CE00272A3B /* PBXTextBookmark */; + 6BA8CF671255D4CE00272A3B /* PBXTextBookmark */ = 6BA8CF671255D4CE00272A3B /* PBXTextBookmark */; + 6BA8CF691255D4DA00272A3B /* PBXTextBookmark */ = 6BA8CF691255D4DA00272A3B /* PBXTextBookmark */; + 6BA8CF6A1255D4E900272A3B /* PBXTextBookmark */ = 6BA8CF6A1255D4E900272A3B /* PBXTextBookmark */; + 6BA8CF6B1255D4F300272A3B /* PBXTextBookmark */ = 6BA8CF6B1255D4F300272A3B /* PBXTextBookmark */; + 6BA8CF6C1255D4FD00272A3B /* PBXTextBookmark */ = 6BA8CF6C1255D4FD00272A3B /* PBXTextBookmark */; + 6BA8CF6D1255D4FD00272A3B /* PBXTextBookmark */ = 6BA8CF6D1255D4FD00272A3B /* PBXTextBookmark */; + 6BA8CF6E1255D4FD00272A3B /* PBXTextBookmark */ = 6BA8CF6E1255D4FD00272A3B /* PBXTextBookmark */; + 6BA8CF6F1255D50700272A3B /* PBXTextBookmark */ = 6BA8CF6F1255D50700272A3B /* PBXTextBookmark */; + 6BA8CF701255D50700272A3B /* PBXTextBookmark */ = 6BA8CF701255D50700272A3B /* PBXTextBookmark */; + 6BA8CF711255D50700272A3B /* PBXTextBookmark */ = 6BA8CF711255D50700272A3B /* PBXTextBookmark */; + 6BA8CF721255D51200272A3B /* PBXTextBookmark */ = 6BA8CF721255D51200272A3B /* PBXTextBookmark */; + 6BA8CF731255D51200272A3B /* PBXTextBookmark */ = 6BA8CF731255D51200272A3B /* PBXTextBookmark */; + 6BA8CF741255D51200272A3B /* PBXTextBookmark */ = 6BA8CF741255D51200272A3B /* PBXTextBookmark */; + 6BA8CF751255D51200272A3B /* PBXTextBookmark */ = 6BA8CF751255D51200272A3B /* PBXTextBookmark */; + 6BA8CF7A1255D5FE00272A3B /* PBXTextBookmark */ = 6BA8CF7A1255D5FE00272A3B /* PBXTextBookmark */; + 6BA8CF7B1255D5FE00272A3B /* PBXTextBookmark */ = 6BA8CF7B1255D5FE00272A3B /* PBXTextBookmark */; + 6BA8CF7C1255D5FE00272A3B /* PBXTextBookmark */ = 6BA8CF7C1255D5FE00272A3B /* PBXTextBookmark */; + 6BA8CF7D1255D5FE00272A3B /* PBXTextBookmark */ = 6BA8CF7D1255D5FE00272A3B /* PBXTextBookmark */; + 6BA8CF7E1255D5FE00272A3B /* PBXTextBookmark */ = 6BA8CF7E1255D5FE00272A3B /* PBXTextBookmark */; 6BAF3CB112116AD9008CFCDF = 6BAF3CB112116AD9008CFCDF /* PBXTextBookmark */; 6BAF3E781212869F008CFCDF = 6BAF3E781212869F008CFCDF /* PBXTextBookmark */; 6BAF404F12140B4E008CFCDF = 6BAF404F12140B4E008CFCDF /* PBXTextBookmark */; @@ -311,7 +351,7 @@ ignoreCount = 0; lineNumber = 1324; location = Recast; - modificationTime = 307613126.464667; + modificationTime = 307615228.447264; originalNumberOfMultipleMatches = 1; state = 1; }; @@ -470,16 +510,16 @@ }; 6B25B6100FFA62AD004F1BC4 /* Sample.h */ = { uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {933, 2176}}"; - sepNavSelRange = "{2851, 0}"; - sepNavVisRange = "{2607, 984}"; + sepNavIntBoundsRect = "{{0, 0}, {933, 1677}}"; + sepNavSelRange = "{3880, 19}"; + sepNavVisRange = "{3295, 748}"; }; }; 6B25B6140FFA62BE004F1BC4 /* Sample.cpp */ = { uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {933, 3536}}"; - sepNavSelRange = "{1276, 0}"; - sepNavVisRange = "{1108, 540}"; + sepNavIntBoundsRect = "{{0, 0}, {1219, 2470}}"; + sepNavSelRange = "{1307, 0}"; + sepNavVisRange = "{1241, 281}"; }; }; 6B25B6180FFA62BE004F1BC4 /* main.cpp */ = { @@ -515,9 +555,9 @@ }; 6B324C65111C5D9A00EBD2FD /* ConvexVolumeTool.cpp */ = { uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {933, 4640}}"; + sepNavIntBoundsRect = "{{0, 0}, {933, 3614}}"; sepNavSelRange = "{5809, 0}"; - sepNavVisRange = "{5573, 638}"; + sepNavVisRange = "{5564, 704}"; }; }; 6B4214D911803923006C347B /* PBXTextBookmark */ = { @@ -530,7 +570,7 @@ vrLen = 770; vrLoc = 3217; }; - 6B42164711806B2F006C347B /* DetourDebugDraw.cpp:360 */ = { + 6B42164711806B2F006C347B /* DetourDebugDraw.cpp:362 */ = { isa = PBXFileBreakpoint; actions = ( ); @@ -542,9 +582,9 @@ functionName = "drawMeshTilePortal(duDebugDraw* dd, const dtMeshTile* tile)"; hitCount = 0; ignoreCount = 0; - lineNumber = 360; + lineNumber = 362; location = Recast; - modificationTime = 307612953.131994; + modificationTime = 307614937.160346; originalNumberOfMultipleMatches = 1; state = 1; }; @@ -831,7 +871,7 @@ ignoreCount = 0; lineNumber = 78; location = Recast; - modificationTime = 307612952.058299; + modificationTime = 307614936.228447; originalNumberOfMultipleMatches = 0; state = 2; }; @@ -848,7 +888,7 @@ hitCount = 0; ignoreCount = 0; lineNumber = 131; - modificationTime = 307613126.464959; + modificationTime = 307615228.447562; originalNumberOfMultipleMatches = 1; state = 1; }; @@ -914,16 +954,16 @@ }; 6B98463111E6144400FA177B /* Sample_SoloMeshTiled.h */ = { uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {933, 2048}}"; + sepNavIntBoundsRect = "{{0, 0}, {933, 1586}}"; sepNavSelRange = "{2060, 25}"; - sepNavVisRange = "{1753, 796}"; + sepNavVisRange = "{1753, 663}"; }; }; 6B98463211E6144400FA177B /* Sample_SoloMeshTiled.cpp */ = { uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {943, 17776}}"; - sepNavSelRange = "{21674, 1}"; - sepNavVisRange = "{21152, 1304}"; + sepNavIntBoundsRect = "{{0, 0}, {933, 14560}}"; + sepNavSelRange = "{11617, 0}"; + sepNavVisRange = "{11096, 1076}"; sepNavWindowFrame = "{{38, 30}, {1214, 722}}"; }; }; @@ -981,9 +1021,9 @@ }; 6BA1E88810C7BFC9008007F6 /* Sample_SoloMeshSimple.cpp */ = { uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {933, 10592}}"; - sepNavSelRange = "{12359, 0}"; - sepNavVisRange = "{12190, 634}"; + sepNavIntBoundsRect = "{{0, 0}, {1219, 8281}}"; + sepNavSelRange = "{8071, 18}"; + sepNavVisRange = "{7496, 687}"; }; }; 6BA1E88E10C7BFD3008007F6 /* Sample_SoloMeshSimple.h */ = { @@ -1044,7 +1084,7 @@ ignoreCount = 0; lineNumber = 137; location = Recast; - modificationTime = 307612953.146325; + modificationTime = 307614937.177776; originalNumberOfMultipleMatches = 1; state = 1; }; @@ -1455,7 +1495,7 @@ fRef = 6BAF3C581211663A008CFCDF /* CrowdTool.cpp */; name = "CrowdTool.cpp: 423"; rLen = 0; - rLoc = 10722; + rLoc = 10947; rType = 0; vrLen = 780; vrLoc = 10192; @@ -1495,7 +1535,7 @@ fRef = 6BAF3C581211663A008CFCDF /* CrowdTool.cpp */; name = "CrowdTool.cpp: 423"; rLen = 0; - rLoc = 10722; + rLoc = 10947; rType = 0; vrLen = 780; vrLoc = 10192; @@ -1505,7 +1545,7 @@ fRef = 6BAF3C581211663A008CFCDF /* CrowdTool.cpp */; name = "CrowdTool.cpp: 452"; rLen = 0; - rLoc = 11384; + rLoc = 11609; rType = 0; vrLen = 1074; vrLoc = 10805; @@ -1515,7 +1555,7 @@ fRef = 6BAF3C581211663A008CFCDF /* CrowdTool.cpp */; name = "CrowdTool.cpp: 600"; rLen = 0; - rLoc = 16102; + rLoc = 16327; rType = 0; vrLen = 1070; vrLoc = 15227; @@ -1545,7 +1585,7 @@ fRef = 6BAF3C581211663A008CFCDF /* CrowdTool.cpp */; name = "CrowdTool.cpp: 600"; rLen = 0; - rLoc = 16102; + rLoc = 16327; rType = 0; vrLen = 1070; vrLoc = 15227; @@ -1555,7 +1595,7 @@ fRef = 6BAF3C581211663A008CFCDF /* CrowdTool.cpp */; name = "CrowdTool.cpp: 600"; rLen = 0; - rLoc = 16102; + rLoc = 16327; rType = 0; vrLen = 1144; vrLoc = 15430; @@ -1565,7 +1605,7 @@ fRef = 6BAF3C581211663A008CFCDF /* CrowdTool.cpp */; name = "CrowdTool.cpp: 600"; rLen = 0; - rLoc = 16102; + rLoc = 16327; rType = 0; vrLen = 925; vrLoc = 15545; @@ -1643,7 +1683,7 @@ isa = PBXTextBookmark; fRef = 6BAF3C581211663A008CFCDF /* CrowdTool.cpp */; rLen = 0; - rLoc = 618; + rLoc = 628; rType = 1; }; 6BA8CF341255CDD100272A3B /* PBXTextBookmark */ = { @@ -1651,7 +1691,7 @@ fRef = 6BAF3C581211663A008CFCDF /* CrowdTool.cpp */; name = "CrowdTool.cpp: 602"; rLen = 0; - rLoc = 16102; + rLoc = 16327; rType = 0; vrLen = 860; vrLoc = 15968; @@ -1661,7 +1701,7 @@ fRef = 6BAF3C581211663A008CFCDF /* CrowdTool.cpp */; name = "CrowdTool.cpp: 609"; rLen = 0; - rLoc = 16102; + rLoc = 16327; rType = 0; vrLen = 904; vrLoc = 15968; @@ -1721,7 +1761,7 @@ fRef = 6BAF3C571211663A008CFCDF /* CrowdTool.h */; name = "CrowdTool.h: 71"; rLen = 10; - rLoc = 1788; + rLoc = 1817; rType = 0; vrLen = 633; vrLoc = 1390; @@ -1731,7 +1771,7 @@ fRef = 6BAF3C581211663A008CFCDF /* CrowdTool.cpp */; name = "CrowdTool.cpp: 188"; rLen = 0; - rLoc = 5073; + rLoc = 5089; rType = 0; vrLen = 708; vrLoc = 4430; @@ -1741,7 +1781,7 @@ fRef = 6BAF3C581211663A008CFCDF /* CrowdTool.cpp */; name = "CrowdTool.cpp: 606"; rLen = 0; - rLoc = 16330; + rLoc = 16555; rType = 0; vrLen = 1178; vrLoc = 15762; @@ -1751,23 +1791,430 @@ fRef = 6BAF3C581211663A008CFCDF /* CrowdTool.cpp */; name = "CrowdTool.cpp: 610"; rLen = 0; - rLoc = 16401; + rLoc = 16626; rType = 0; vrLen = 1016; vrLoc = 16127; }; + 6BA8CF4A1255D44700272A3B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 6BCF32341104CD05009445BF /* OffMeshConnectionTool.h */; + name = "OffMeshConnectionTool.h: 32"; + rLen = 27; + rLoc = 1186; + rType = 0; + vrLen = 996; + vrLoc = 711; + }; + 6BA8CF4B1255D44700272A3B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 6BAF3C571211663A008CFCDF /* CrowdTool.h */; + name = "CrowdTool.h: 59"; + rLen = 0; + rLoc = 1573; + rType = 0; + vrLen = 598; + vrLoc = 1390; + }; + 6BA8CF4C1255D44700272A3B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 6BCF32351104CD05009445BF /* OffMeshConnectionTool.cpp */; + name = "OffMeshConnectionTool.cpp: 48"; + rLen = 66; + rLoc = 1458; + rType = 0; + vrLen = 621; + vrLoc = 1184; + }; + 6BA8CF4D1255D44700272A3B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 6B324C65111C5D9A00EBD2FD /* ConvexVolumeTool.cpp */; + name = "ConvexVolumeTool.cpp: 246"; + rLen = 0; + rLoc = 5809; + rType = 0; + vrLen = 704; + vrLoc = 5564; + }; + 6BA8CF4E1255D44700272A3B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 6BB93C7810CFE1D500F74F2B /* DetourDebugDraw.h */; + name = "DetourDebugDraw.h: 28"; + rLen = 25; + rLoc = 1098; + rType = 0; + vrLen = 1721; + vrLoc = 0; + }; + 6BA8CF4F1255D44700272A3B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 6BB93C7B10CFE1D500F74F2B /* DetourDebugDraw.cpp */; + name = "DetourDebugDraw.cpp: 252"; + rLen = 25; + rLoc = 7285; + rType = 0; + vrLen = 812; + vrLoc = 6609; + }; + 6BA8CF501255D44700272A3B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 6B98463211E6144400FA177B /* Sample_SoloMeshTiled.cpp */; + name = "Sample_SoloMeshTiled.cpp: 386"; + rLen = 0; + rLoc = 11617; + rType = 0; + vrLen = 1076; + vrLoc = 11096; + }; + 6BA8CF511255D44700272A3B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 6B98463111E6144400FA177B /* Sample_SoloMeshTiled.h */; + name = "Sample_SoloMeshTiled.h: 72"; + rLen = 25; + rLoc = 2060; + rType = 0; + vrLen = 663; + vrLoc = 1753; + }; + 6BA8CF521255D44700272A3B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 6B25B6100FFA62AD004F1BC4 /* Sample.h */; + name = "Sample.h: 79"; + rLen = 18; + rLoc = 2404; + rType = 0; + vrLen = 793; + vrLoc = 1941; + }; + 6BA8CF531255D44700272A3B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 6B25B6140FFA62BE004F1BC4 /* Sample.cpp */; + name = "Sample.cpp: 41"; + rLen = 25; + rLoc = 1386; + rType = 0; + vrLen = 534; + vrLoc = 1108; + }; + 6BA8CF541255D44700272A3B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 6BAF3C581211663A008CFCDF /* CrowdTool.cpp */; + name = "CrowdTool.cpp: 209"; + rLen = 0; + rLoc = 5345; + rType = 0; + vrLen = 548; + vrLoc = 4926; + }; + 6BA8CF551255D44700272A3B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 6BAF3C581211663A008CFCDF /* CrowdTool.cpp */; + name = "CrowdTool.cpp: 211"; + rLen = 0; + rLoc = 5440; + rType = 0; + vrLen = 498; + vrLoc = 5027; + }; + 6BA8CF591255D49B00272A3B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 6BAF3C581211663A008CFCDF /* CrowdTool.cpp */; + name = "CrowdTool.cpp: 199"; + rLen = 0; + rLoc = 5214; + rType = 0; + vrLen = 534; + vrLoc = 4964; + }; + 6BA8CF5A1255D49B00272A3B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 6B25B6140FFA62BE004F1BC4 /* Sample.cpp */; + name = "Sample.cpp: 41"; + rLen = 25; + rLoc = 1386; + rType = 0; + vrLen = 354; + vrLoc = 1108; + }; + 6BA8CF5B1255D49B00272A3B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 6BB93C7810CFE1D500F74F2B /* DetourDebugDraw.h */; + name = "DetourDebugDraw.h: 27"; + rLen = 0; + rLoc = 1096; + rType = 0; + vrLen = 797; + vrLoc = 923; + }; + 6BA8CF5C1255D49B00272A3B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 6BB93C7B10CFE1D500F74F2B /* DetourDebugDraw.cpp */; + name = "DetourDebugDraw.cpp: 258"; + rLen = 0; + rLoc = 7478; + rType = 0; + vrLen = 497; + vrLoc = 7087; + }; + 6BA8CF5E1255D4AC00272A3B /* DetourDebugDraw.cpp:252 */ = { + isa = PBXFileBreakpoint; + actions = ( + ); + breakpointStyle = 0; + continueAfterActions = 0; + countType = 0; + delayBeforeContinue = 0; + fileReference = 6BB93C7B10CFE1D500F74F2B /* DetourDebugDraw.cpp */; + functionName = "duDebugDrawNavMeshWithClosedList(struct duDebugDraw* dd, const dtNavMesh& mesh, const dtNavMeshQuery& query, unsigned char flags)"; + hitCount = 1; + ignoreCount = 0; + lineNumber = 252; + location = Recast; + modificationTime = 307614978.805375; + originalNumberOfMultipleMatches = 1; + state = 1; + }; + 6BA8CF601255D4C500272A3B /* Sample.cpp:45 */ = { + isa = PBXFileBreakpoint; + actions = ( + ); + breakpointStyle = 0; + continueAfterActions = 0; + countType = 0; + delayBeforeContinue = 0; + fileReference = 6B25B6140FFA62BE004F1BC4 /* Sample.cpp */; + functionName = "Sample::Sample()"; + hitCount = 1; + ignoreCount = 0; + lineNumber = 45; + location = Recast; + modificationTime = 307614942.48468; + originalNumberOfMultipleMatches = 1; + state = 1; + }; + 6BA8CF641255D4CE00272A3B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 6BB93C7B10CFE1D500F74F2B /* DetourDebugDraw.cpp */; + name = "DetourDebugDraw.cpp: 253"; + rLen = 0; + rLoc = 7327; + rType = 0; + vrLen = 512; + vrLoc = 7092; + }; + 6BA8CF651255D4CE00272A3B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 6B25B6100FFA62AD004F1BC4 /* Sample.h */; + name = "Sample.h: 79"; + rLen = 18; + rLoc = 2404; + rType = 0; + vrLen = 424; + vrLoc = 2109; + }; + 6BA8CF661255D4CE00272A3B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 6B25B6140FFA62BE004F1BC4 /* Sample.cpp */; + name = "Sample.cpp: 38"; + rLen = 15; + rLoc = 1307; + rType = 0; + vrLen = 317; + vrLoc = 1203; + }; + 6BA8CF671255D4CE00272A3B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 6B25B6140FFA62BE004F1BC4 /* Sample.cpp */; + name = "Sample.cpp: 42"; + rLen = 0; + rLoc = 1425; + rType = 0; + vrLen = 327; + vrLoc = 1228; + }; + 6BA8CF691255D4DA00272A3B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 6B25B6140FFA62BE004F1BC4 /* Sample.cpp */; + name = "Sample.cpp: 45"; + rLen = 0; + rLoc = 1461; + rType = 0; + vrLen = 327; + vrLoc = 1228; + }; + 6BA8CF6A1255D4E900272A3B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 6B25B6140FFA62BE004F1BC4 /* Sample.cpp */; + name = "Sample.cpp: 45"; + rLen = 0; + rLoc = 1461; + rType = 0; + vrLen = 327; + vrLoc = 1228; + }; + 6BA8CF6B1255D4F300272A3B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 6B25B6140FFA62BE004F1BC4 /* Sample.cpp */; + name = "Sample.cpp: 38"; + rLen = 0; + rLoc = 1307; + rType = 0; + vrLen = 281; + vrLoc = 1241; + }; + 6BA8CF6C1255D4FD00272A3B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 6B25B6140FFA62BE004F1BC4 /* Sample.cpp */; + name = "Sample.cpp: 38"; + rLen = 0; + rLoc = 1307; + rType = 0; + vrLen = 327; + vrLoc = 1228; + }; + 6BA8CF6D1255D4FD00272A3B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 6BB93C7B10CFE1D500F74F2B /* DetourDebugDraw.cpp */; + name = "DetourDebugDraw.cpp: 253"; + rLen = 0; + rLoc = 7327; + rType = 0; + vrLen = 512; + vrLoc = 7092; + }; + 6BA8CF6E1255D4FD00272A3B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 6BB93C7B10CFE1D500F74F2B /* DetourDebugDraw.cpp */; + name = "DetourDebugDraw.cpp: 253"; + rLen = 0; + rLoc = 7327; + rType = 0; + vrLen = 512; + vrLoc = 7092; + }; + 6BA8CF6F1255D50700272A3B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 6B25B6140FFA62BE004F1BC4 /* Sample.cpp */; + name = "Sample.cpp: 46"; + rLen = 0; + rLoc = 1462; + rType = 0; + vrLen = 327; + vrLoc = 1228; + }; + 6BA8CF701255D50700272A3B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 6BB93C7B10CFE1D500F74F2B /* DetourDebugDraw.cpp */; + rLen = 0; + rLoc = 251; + rType = 1; + }; + 6BA8CF711255D50700272A3B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 6BB93C7B10CFE1D500F74F2B /* DetourDebugDraw.cpp */; + name = "DetourDebugDraw.cpp: 252"; + rLen = 0; + rLoc = 7249; + rType = 0; + vrLen = 512; + vrLoc = 7092; + }; + 6BA8CF721255D51200272A3B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 6B25B6140FFA62BE004F1BC4 /* Sample.cpp */; + name = "Sample.cpp: 38"; + rLen = 0; + rLoc = 1307; + rType = 0; + vrLen = 281; + vrLoc = 1241; + }; + 6BA8CF731255D51200272A3B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 6BB93C7B10CFE1D500F74F2B /* DetourDebugDraw.cpp */; + name = "DetourDebugDraw.cpp: 252"; + rLen = 0; + rLoc = 7249; + rType = 0; + vrLen = 490; + vrLoc = 7092; + }; + 6BA8CF741255D51200272A3B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 6BA1E88810C7BFC9008007F6 /* Sample_SoloMeshSimple.cpp */; + rLen = 0; + rLoc = 249; + rType = 1; + }; + 6BA8CF751255D51200272A3B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 6BA1E88810C7BFC9008007F6 /* Sample_SoloMeshSimple.cpp */; + name = "Sample_SoloMeshSimple.cpp: 250"; + rLen = 18; + rLoc = 8071; + rType = 0; + vrLen = 687; + vrLoc = 7496; + }; + 6BA8CF7A1255D5FE00272A3B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 6BB93C7B10CFE1D500F74F2B /* DetourDebugDraw.cpp */; + name = "DetourDebugDraw.cpp: 252"; + rLen = 0; + rLoc = 7249; + rType = 0; + vrLen = 512; + vrLoc = 7092; + }; + 6BA8CF7B1255D5FE00272A3B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 6BA1E88810C7BFC9008007F6 /* Sample_SoloMeshSimple.cpp */; + name = "Sample_SoloMeshSimple.cpp: 250"; + rLen = 18; + rLoc = 8071; + rType = 0; + vrLen = 755; + vrLoc = 7472; + }; + 6BA8CF7C1255D5FE00272A3B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 6B25B6100FFA62AD004F1BC4 /* Sample.h */; + name = "Sample.h: 128"; + rLen = 19; + rLoc = 3880; + rType = 0; + vrLen = 748; + vrLoc = 3295; + }; + 6BA8CF7D1255D5FE00272A3B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 6BB7FC0A10EBB6AA006DA0A6 /* NavMeshTesterTool.cpp */; + rLen = 0; + rLoc = 4678; + rType = 0; + }; + 6BA8CF7E1255D5FE00272A3B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 6BB7FC0A10EBB6AA006DA0A6 /* NavMeshTesterTool.cpp */; + name = "NavMeshTesterTool.cpp: 173"; + rLen = 0; + rLoc = 4678; + rType = 0; + vrLen = 597; + vrLoc = 4600; + }; 6BAF3C571211663A008CFCDF /* CrowdTool.h */ = { uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {933, 1482}}"; - sepNavSelRange = "{1788, 10}"; - sepNavVisRange = "{1390, 633}"; + sepNavIntBoundsRect = "{{0, 0}, {933, 1430}}"; + sepNavSelRange = "{1573, 0}"; + sepNavVisRange = "{1390, 598}"; }; }; 6BAF3C581211663A008CFCDF /* CrowdTool.cpp */ = { uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {933, 9737}}"; - sepNavSelRange = "{16401, 0}"; - sepNavVisRange = "{16127, 1016}"; + sepNavIntBoundsRect = "{{0, 0}, {933, 10296}}"; + sepNavSelRange = "{5214, 0}"; + sepNavVisRange = "{4964, 534}"; sepNavWindowFrame = "{{15, 51}, {1214, 722}}"; }; }; @@ -1923,9 +2370,9 @@ }; 6BB7FC0A10EBB6AA006DA0A6 /* NavMeshTesterTool.cpp */ = { uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {933, 16302}}"; - sepNavSelRange = "{13948, 0}"; - sepNavVisRange = "{13682, 883}"; + sepNavIntBoundsRect = "{{0, 0}, {933, 15899}}"; + sepNavSelRange = "{4678, 0}"; + sepNavVisRange = "{4600, 597}"; sepNavWindowFrame = "{{38, 30}, {1214, 722}}"; }; }; @@ -1952,9 +2399,9 @@ }; 6BB93C7810CFE1D500F74F2B /* DetourDebugDraw.h */ = { uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {957, 592}}"; - sepNavSelRange = "{1383, 0}"; - sepNavVisRange = "{64, 1649}"; + sepNavIntBoundsRect = "{{0, 0}, {957, 494}}"; + sepNavSelRange = "{1096, 0}"; + sepNavVisRange = "{923, 797}"; }; }; 6BB93C7910CFE1D500F74F2B /* RecastDebugDraw.h */ = { @@ -1973,9 +2420,9 @@ }; 6BB93C7B10CFE1D500F74F2B /* DetourDebugDraw.cpp */ = { uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {933, 5876}}"; - sepNavSelRange = "{4979, 0}"; - sepNavVisRange = "{3967, 1071}"; + sepNavIntBoundsRect = "{{0, 0}, {950, 5876}}"; + sepNavSelRange = "{7249, 0}"; + sepNavVisRange = "{7092, 512}"; sepNavWindowFrame = "{{61, 9}, {1214, 722}}"; }; }; @@ -2006,7 +2453,7 @@ fRef = 6BAF3C581211663A008CFCDF /* CrowdTool.cpp */; name = "CrowdTool.cpp: 381"; rLen = 0; - rLoc = 9989; + rLoc = 10214; rType = 0; vrLen = 616; vrLoc = 9608; @@ -2025,7 +2472,7 @@ ignoreCount = 0; lineNumber = 592; location = Recast; - modificationTime = 307612953.076889; + modificationTime = 307614937.236984; originalNumberOfMultipleMatches = 1; state = 1; }; @@ -2043,7 +2490,7 @@ ignoreCount = 0; lineNumber = 217; location = Recast; - modificationTime = 307612953.093073; + modificationTime = 307614937.242928; originalNumberOfMultipleMatches = 1; state = 1; }; @@ -2182,22 +2629,22 @@ ignoreCount = 0; lineNumber = 279; location = Recast; - modificationTime = 307612952.959191; + modificationTime = 307614937.143502; originalNumberOfMultipleMatches = 1; state = 1; }; 6BCF32341104CD05009445BF /* OffMeshConnectionTool.h */ = { uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {826, 800}}"; - sepNavSelRange = "{1564, 0}"; - sepNavVisRange = "{956, 717}"; + sepNavIntBoundsRect = "{{0, 0}, {933, 650}}"; + sepNavSelRange = "{1186, 27}"; + sepNavVisRange = "{711, 996}"; }; }; 6BCF32351104CD05009445BF /* OffMeshConnectionTool.cpp */ = { uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {933, 2640}}"; - sepNavSelRange = "{1851, 57}"; - sepNavVisRange = "{1576, 528}"; + sepNavIntBoundsRect = "{{0, 0}, {933, 2158}}"; + sepNavSelRange = "{1458, 66}"; + sepNavVisRange = "{1184, 621}"; }; }; 6BD401FF1224278800995864 /* PerfTimer.h */ = { @@ -2219,7 +2666,7 @@ fRef = 6BB93C7810CFE1D500F74F2B /* DetourDebugDraw.h */; name = "DetourDebugDraw.h: 32"; rLen = 0; - rLoc = 1383; + rLoc = 1418; rType = 0; vrLen = 1649; vrLoc = 64; @@ -2314,7 +2761,7 @@ vrLen = 763; vrLoc = 1682; }; - 6BD403421224642500995864 /* NavMeshTesterTool.cpp:580 */ = { + 6BD403421224642500995864 /* NavMeshTesterTool.cpp:541 */ = { isa = PBXFileBreakpoint; actions = ( ); @@ -2326,9 +2773,9 @@ functionName = "NavMeshTesterTool::recalc()"; hitCount = 0; ignoreCount = 0; - lineNumber = 580; + lineNumber = 541; location = Recast; - modificationTime = 307612953.047211; + modificationTime = 307614937.192084; originalNumberOfMultipleMatches = 1; state = 1; }; @@ -2384,7 +2831,7 @@ vrLen = 784; vrLoc = 1728; }; - 6BD66851124350F50021A7A4 /* NavMeshTesterTool.cpp:519 */ = { + 6BD66851124350F50021A7A4 /* NavMeshTesterTool.cpp:480 */ = { isa = PBXFileBreakpoint; actions = ( ); @@ -2396,9 +2843,9 @@ functionName = "NavMeshTesterTool::handleUpdate(const float /*dt*/)"; hitCount = 0; ignoreCount = 0; - lineNumber = 519; + lineNumber = 480; location = Recast; - modificationTime = 307612953.061312; + modificationTime = 307614937.213029; originalNumberOfMultipleMatches = 1; state = 1; }; @@ -2417,7 +2864,7 @@ fRef = 6BB7FC0A10EBB6AA006DA0A6 /* NavMeshTesterTool.cpp */; name = "NavMeshTesterTool.cpp: 518"; rLen = 0; - rLoc = 13948; + rLoc = 12839; rType = 0; vrLen = 883; vrLoc = 13682; @@ -2567,7 +3014,7 @@ fRef = 6BAF3C571211663A008CFCDF /* CrowdTool.h */; name = "CrowdTool.h: 71"; rLen = 0; - rLoc = 1800; + rLoc = 1829; rType = 0; vrLen = 634; vrLoc = 1388; diff --git a/RecastDemo/Build/Xcode/Recast.xcodeproj/memon.perspectivev3 b/RecastDemo/Build/Xcode/Recast.xcodeproj/memon.perspectivev3 index 8d56f07..ef64b9b 100644 --- a/RecastDemo/Build/Xcode/Recast.xcodeproj/memon.perspectivev3 +++ b/RecastDemo/Build/Xcode/Recast.xcodeproj/memon.perspectivev3 @@ -284,14 +284,14 @@ PBXSmartGroupTreeModuleOutlineStateSelectionKey - 53 - 51 + 10 + 2 1 0 PBXSmartGroupTreeModuleOutlineStateVisibleRectKey - {{0, 799}, {264, 607}} + {{0, 14}, {264, 607}} PBXTopSmartGroupGIDs @@ -326,7 +326,7 @@ PBXProjectModuleGUID 6B8632A30F78115100E2684A PBXProjectModuleLabel - CrowdTool.cpp + NavMeshTesterTool.cpp PBXSplitModuleInNavigatorKey Split0 @@ -334,11 +334,11 @@ PBXProjectModuleGUID 6B8632A40F78115100E2684A PBXProjectModuleLabel - CrowdTool.cpp + NavMeshTesterTool.cpp _historyCapacity 0 bookmark - 6BA8CF451255D17A00272A3B + 6BA8CF7E1255D5FE00272A3B history 6BBB4AA5115B4F3400CF791D @@ -351,22 +351,17 @@ 6B4214D911803923006C347B 6B98462E11E6141900FA177B 6B98473011E737D800FA177B - 6BAF3CB112116AD9008CFCDF 6BAF3E781212869F008CFCDF 6BAF404F12140B4E008CFCDF 6BAF4321121AF998008CFCDF 6BAF4421121C25E3008CFCDF - 6BAF4446121C40AC008CFCDF 6BAF4525121D1723008CFCDF 6BAF46D3121D8FF1008CFCDF 6B1C8E08121EB4FF0048697F - 6B1C8E0A121EB4FF0048697F - 6B1C8E27121EB6D30048697F 6BA6876E1222F02E00730711 6BA687831222F42100730711 6BA687881222F4DB00730711 6BA687CA1222FA9300730711 - 6BD4020E1224336600995864 6BD402111224336600995864 6BD402121224336600995864 6BD402611224387200995864 @@ -377,18 +372,14 @@ 6BD402B4122441CB00995864 6B920A521225C0AC00D5B5AD 6B920A6D1225C5DD00D5B5AD - 6B920A811225D2EC00D5B5AD - 6B920A8F1225D3C900D5B5AD 6B920AA81225DBCB00D5B5AD 6BA7F8AC1226EF0400C8C47A - 6BA7F8B61226EF1100C8C47A 6BA7F8D01226EF9D00C8C47A 6BA7F8EC1227002300C8C47A 6BA7F8ED1227002300C8C47A 6BA7F8EE1227002300C8C47A 6B847515122B9F4900ADF63D 6B8476F9122D000800ADF63D - 6B8476FA122D000800ADF63D 6B847779122D223D00ADF63D 6B84778B122D279700ADF63D 6B8477BB122D297200ADF63D @@ -402,11 +393,9 @@ 6BD6681812434B790021A7A4 6BD6684E124350B80021A7A4 6BD66855124350F80021A7A4 - 6BD6685E124351D70021A7A4 6BD6685F124351D70021A7A4 6BD6686E124356CE0021A7A4 6BD668A3124361EB0021A7A4 - 6BD668D6124367E30021A7A4 6BD6691112436CEC0021A7A4 6BD6691212436CEC0021A7A4 6BD66930124374D60021A7A4 @@ -428,8 +417,19 @@ 6BA8CEEF1255C4B700272A3B 6BA8CF221255CCD500272A3B 6BA8CF411255D16D00272A3B - 6BA8CF421255D16D00272A3B - 6BA8CF431255D16D00272A3B + 6BA8CF4A1255D44700272A3B + 6BA8CF4B1255D44700272A3B + 6BA8CF4C1255D44700272A3B + 6BA8CF4D1255D44700272A3B + 6BA8CF501255D44700272A3B + 6BA8CF511255D44700272A3B + 6BA8CF591255D49B00272A3B + 6BA8CF5B1255D49B00272A3B + 6BA8CF6F1255D50700272A3B + 6BA8CF7A1255D5FE00272A3B + 6BA8CF7B1255D5FE00272A3B + 6BA8CF7C1255D5FE00272A3B + 6BA8CF7D1255D5FE00272A3B SplitCount @@ -443,18 +443,18 @@ GeometryConfiguration Frame - {{0, 0}, {994, 516}} + {{0, 0}, {994, 408}} RubberWindowFrame 0 112 1280 666 0 0 1280 778 Module PBXNavigatorGroup Proportion - 516pt + 408pt Proportion - 104pt + 212pt Tabs @@ -484,7 +484,9 @@ GeometryConfiguration Frame - {{10, 27}, {994, 249}} + {{10, 27}, {994, 185}} + RubberWindowFrame + 0 112 1280 666 0 0 1280 778 Module PBXProjectFindModule @@ -523,8 +525,6 @@ Frame {{10, 27}, {994, 77}} - RubberWindowFrame - 0 112 1280 666 0 0 1280 778 Module PBXBuildResultsModule @@ -743,6 +743,7 @@ 5 WindowOrderList + 6BA8CF7F1255D5FE00272A3B 6BA8CF1C1255CC4F00272A3B 6BA8CF1D1255CC4F00272A3B /Users/memon/Code/recastnavigation/RecastDemo/Build/Xcode/Recast.xcodeproj diff --git a/RecastDemo/Include/CrowdTool.h b/RecastDemo/Include/CrowdTool.h index 441d09a..6c60d36 100644 --- a/RecastDemo/Include/CrowdTool.h +++ b/RecastDemo/Include/CrowdTool.h @@ -55,6 +55,8 @@ struct Formation class CrowdTool : public SampleTool { Sample* m_sample; + unsigned char m_oldFlags; + float m_targetPos[3]; bool m_targetPosSet; diff --git a/RecastDemo/Source/CrowdTool.cpp b/RecastDemo/Source/CrowdTool.cpp index 342477a..225f7a7 100644 --- a/RecastDemo/Source/CrowdTool.cpp +++ b/RecastDemo/Source/CrowdTool.cpp @@ -173,6 +173,7 @@ static void createFormation(Formation* form, const dtNavMesh* navmesh) CrowdTool::CrowdTool() : m_sample(0), + m_oldFlags(0), m_targetPosSet(0), m_expandDebugDraw(false), m_showLabels(true), @@ -195,11 +196,20 @@ CrowdTool::CrowdTool() : CrowdTool::~CrowdTool() { + if (m_sample) + { + m_sample->setNavMeshDrawFlags(m_oldFlags); + } } void CrowdTool::init(Sample* sample) { m_sample = sample; + if (m_sample) + { + m_oldFlags = m_sample->getNavMeshDrawFlags(); + m_sample->setNavMeshDrawFlags(m_oldFlags & ~DU_DRAWNAVMESH_CLOSEDLIST); + } } void CrowdTool::reset() diff --git a/RecastDemo/Source/NavMeshTesterTool.cpp b/RecastDemo/Source/NavMeshTesterTool.cpp index f655cb4..fff0fce 100644 --- a/RecastDemo/Source/NavMeshTesterTool.cpp +++ b/RecastDemo/Source/NavMeshTesterTool.cpp @@ -170,13 +170,6 @@ NavMeshTesterTool::NavMeshTesterTool() : NavMeshTesterTool::~NavMeshTesterTool() { - if (m_sample) - { - unsigned char flags = 0; - if (m_navMesh) - flags |= DU_DRAWNAVMESH_OFFMESHCONS; - m_sample->setNavMeshDrawFlags(flags); - } } void NavMeshTesterTool::init(Sample* sample) @@ -195,23 +188,6 @@ void NavMeshTesterTool::init(Sample* sample) m_filter.setAreaCost(SAMPLE_POLYAREA_DOOR, 1.0f); m_filter.setAreaCost(SAMPLE_POLYAREA_GRASS, 2.0f); m_filter.setAreaCost(SAMPLE_POLYAREA_JUMP, 1.5f); - -/* m_navQuery->setAreaCost(SAMPLE_POLYAREA_GROUND, 1.0f); - m_navQuery->setAreaCost(SAMPLE_POLYAREA_WATER, 10.0f); - m_navQuery->setAreaCost(SAMPLE_POLYAREA_ROAD, 1.0f); - m_navQuery->setAreaCost(SAMPLE_POLYAREA_DOOR, 1.0f); - m_navQuery->setAreaCost(SAMPLE_POLYAREA_GRASS, 2.0f); - m_navQuery->setAreaCost(SAMPLE_POLYAREA_JUMP, 1.5f);*/ - } - - if (m_toolMode == TOOLMODE_PATHFIND_FOLLOW || - m_toolMode == TOOLMODE_PATHFIND_STRAIGHT || - m_toolMode == TOOLMODE_PATHFIND_SLICED) - { - unsigned char flags = 0; - if (m_navMesh) - flags |= DU_DRAWNAVMESH_OFFMESHCONS; - m_sample->setNavMeshDrawFlags(flags); } m_neighbourhoodRadius = sample->getAgentRadius() * 20.0f; @@ -325,22 +301,7 @@ void NavMeshTesterTool::handleMenu() } imguiUnindent(); - imguiSeparator(); - - if (m_toolMode == TOOLMODE_PATHFIND_FOLLOW || m_toolMode == TOOLMODE_PATHFIND_STRAIGHT) - { - unsigned char flags = 0; - if (m_navMesh) - flags |= DU_DRAWNAVMESH_OFFMESHCONS; - m_sample->setNavMeshDrawFlags(flags); - } - else - { - unsigned char flags = 0; - if (m_navMesh) - flags |= DU_DRAWNAVMESH_OFFMESHCONS; - m_sample->setNavMeshDrawFlags(flags); - } + imguiSeparator(); } void NavMeshTesterTool::handleClick(const float* /*s*/, const float* p, bool shift) diff --git a/RecastDemo/Source/Sample.cpp b/RecastDemo/Source/Sample.cpp index a71d109..4e89dc5 100644 --- a/RecastDemo/Source/Sample.cpp +++ b/RecastDemo/Source/Sample.cpp @@ -38,7 +38,7 @@ Sample::Sample() : m_geom(0), m_navMesh(0), m_navQuery(0), - m_navMeshDrawFlags(DU_DRAWNAVMESH_OFFMESHCONS), + m_navMeshDrawFlags(DU_DRAWNAVMESH_OFFMESHCONS|DU_DRAWNAVMESH_CLOSEDLIST), m_tool(0), m_ctx(0) {