Sped up input geom raycast
This commit is contained in:
parent
1e1cf6e89e
commit
c83be9f214
Binary file not shown.
@ -148,6 +148,41 @@
|
|||||||
6B163317126832D20083FC15 /* PBXTextBookmark */ = 6B163317126832D20083FC15 /* PBXTextBookmark */;
|
6B163317126832D20083FC15 /* PBXTextBookmark */ = 6B163317126832D20083FC15 /* PBXTextBookmark */;
|
||||||
6B163318126832D20083FC15 /* PBXTextBookmark */ = 6B163318126832D20083FC15 /* PBXTextBookmark */;
|
6B163318126832D20083FC15 /* PBXTextBookmark */ = 6B163318126832D20083FC15 /* PBXTextBookmark */;
|
||||||
6B163319126832D20083FC15 /* PBXTextBookmark */ = 6B163319126832D20083FC15 /* PBXTextBookmark */;
|
6B163319126832D20083FC15 /* PBXTextBookmark */ = 6B163319126832D20083FC15 /* PBXTextBookmark */;
|
||||||
|
6B16331A126833820083FC15 /* PBXTextBookmark */ = 6B16331A126833820083FC15 /* PBXTextBookmark */;
|
||||||
|
6B16331D126833AA0083FC15 /* PBXTextBookmark */ = 6B16331D126833AA0083FC15 /* PBXTextBookmark */;
|
||||||
|
6B16338112684C6F0083FC15 /* PBXTextBookmark */ = 6B16338112684C6F0083FC15 /* PBXTextBookmark */;
|
||||||
|
6B16338212684C6F0083FC15 /* PBXTextBookmark */ = 6B16338212684C6F0083FC15 /* PBXTextBookmark */;
|
||||||
|
6B16338312684C6F0083FC15 /* PBXTextBookmark */ = 6B16338312684C6F0083FC15 /* PBXTextBookmark */;
|
||||||
|
6B1633B6126850730083FC15 /* PBXTextBookmark */ = 6B1633B6126850730083FC15 /* PBXTextBookmark */;
|
||||||
|
6B1633C1126850AB0083FC15 /* PBXTextBookmark */ = 6B1633C1126850AB0083FC15 /* PBXTextBookmark */;
|
||||||
|
6B16357012687A5D0083FC15 /* PBXTextBookmark */ = 6B16357012687A5D0083FC15 /* PBXTextBookmark */;
|
||||||
|
6B16357112687A5D0083FC15 /* PBXTextBookmark */ = 6B16357112687A5D0083FC15 /* PBXTextBookmark */;
|
||||||
|
6B16357212687A5D0083FC15 /* PBXTextBookmark */ = 6B16357212687A5D0083FC15 /* PBXTextBookmark */;
|
||||||
|
6B16357312687A5D0083FC15 /* PBXTextBookmark */ = 6B16357312687A5D0083FC15 /* PBXTextBookmark */;
|
||||||
|
6B16357512687A700083FC15 /* PBXTextBookmark */ = 6B16357512687A700083FC15 /* PBXTextBookmark */;
|
||||||
|
6B16357612687A750083FC15 /* PBXTextBookmark */ = 6B16357612687A750083FC15 /* PBXTextBookmark */;
|
||||||
|
6B16357712687A7E0083FC15 /* PBXTextBookmark */ = 6B16357712687A7E0083FC15 /* PBXTextBookmark */;
|
||||||
|
6B16358C12687D740083FC15 /* PBXTextBookmark */ = 6B16358C12687D740083FC15 /* PBXTextBookmark */;
|
||||||
|
6B16358D12687D740083FC15 /* PBXTextBookmark */ = 6B16358D12687D740083FC15 /* PBXTextBookmark */;
|
||||||
|
6B16358E12687D740083FC15 /* PBXTextBookmark */ = 6B16358E12687D740083FC15 /* PBXTextBookmark */;
|
||||||
|
6B16358F12687D740083FC15 /* PBXTextBookmark */ = 6B16358F12687D740083FC15 /* PBXTextBookmark */;
|
||||||
|
6B16359012687D740083FC15 /* PBXTextBookmark */ = 6B16359012687D740083FC15 /* PBXTextBookmark */;
|
||||||
|
6B16359112687D740083FC15 /* PBXTextBookmark */ = 6B16359112687D740083FC15 /* PBXTextBookmark */;
|
||||||
|
6B16359212687D740083FC15 /* PBXTextBookmark */ = 6B16359212687D740083FC15 /* PBXTextBookmark */;
|
||||||
|
6B16359312687D740083FC15 /* PBXTextBookmark */ = 6B16359312687D740083FC15 /* PBXTextBookmark */;
|
||||||
|
6B16359412687D740083FC15 /* PBXTextBookmark */ = 6B16359412687D740083FC15 /* PBXTextBookmark */;
|
||||||
|
6B16359512687D840083FC15 /* PBXTextBookmark */ = 6B16359512687D840083FC15 /* PBXTextBookmark */;
|
||||||
|
6B16359612687D840083FC15 /* PBXTextBookmark */ = 6B16359612687D840083FC15 /* PBXTextBookmark */;
|
||||||
|
6B16359712687D840083FC15 /* PBXTextBookmark */ = 6B16359712687D840083FC15 /* PBXTextBookmark */;
|
||||||
|
6B16359812687D840083FC15 /* PBXTextBookmark */ = 6B16359812687D840083FC15 /* PBXTextBookmark */;
|
||||||
|
6B16359D12687D980083FC15 /* PBXTextBookmark */ = 6B16359D12687D980083FC15 /* PBXTextBookmark */;
|
||||||
|
6B16359E12687D980083FC15 /* PBXTextBookmark */ = 6B16359E12687D980083FC15 /* PBXTextBookmark */;
|
||||||
|
6B1635A212687DAD0083FC15 /* PBXTextBookmark */ = 6B1635A212687DAD0083FC15 /* PBXTextBookmark */;
|
||||||
|
6B1635A412687DC70083FC15 /* PBXTextBookmark */ = 6B1635A412687DC70083FC15 /* PBXTextBookmark */;
|
||||||
|
6B1635A512687DCA0083FC15 /* PBXTextBookmark */ = 6B1635A512687DCA0083FC15 /* PBXTextBookmark */;
|
||||||
|
6B1635A612687DDA0083FC15 /* PBXTextBookmark */ = 6B1635A612687DDA0083FC15 /* PBXTextBookmark */;
|
||||||
|
6B1635A712687DDB0083FC15 /* PBXTextBookmark */ = 6B1635A712687DDB0083FC15 /* PBXTextBookmark */;
|
||||||
|
6B1635A812687E3E0083FC15 /* PBXTextBookmark */ = 6B1635A812687E3E0083FC15 /* PBXTextBookmark */;
|
||||||
6B1C8E08121EB4FF0048697F = 6B1C8E08121EB4FF0048697F /* PBXTextBookmark */;
|
6B1C8E08121EB4FF0048697F = 6B1C8E08121EB4FF0048697F /* PBXTextBookmark */;
|
||||||
6B4214D911803923006C347B = 6B4214D911803923006C347B /* PBXTextBookmark */;
|
6B4214D911803923006C347B = 6B4214D911803923006C347B /* PBXTextBookmark */;
|
||||||
6B847515122B9F4900ADF63D = 6B847515122B9F4900ADF63D /* PBXTextBookmark */;
|
6B847515122B9F4900ADF63D = 6B847515122B9F4900ADF63D /* PBXTextBookmark */;
|
||||||
@ -266,10 +301,9 @@
|
|||||||
hitCount = 0;
|
hitCount = 0;
|
||||||
ignoreCount = 0;
|
ignoreCount = 0;
|
||||||
lineNumber = 1324;
|
lineNumber = 1324;
|
||||||
location = Recast;
|
modificationTime = 308826279.221625;
|
||||||
modificationTime = 307623700.115019;
|
|
||||||
originalNumberOfMultipleMatches = 1;
|
originalNumberOfMultipleMatches = 1;
|
||||||
state = 0;
|
state = 1;
|
||||||
};
|
};
|
||||||
6B1185F41006895B0018F96F /* DetourNode.cpp */ = {
|
6B1185F41006895B0018F96F /* DetourNode.cpp */ = {
|
||||||
uiCtxt = {
|
uiCtxt = {
|
||||||
@ -343,9 +377,9 @@
|
|||||||
};
|
};
|
||||||
6B137C7E0F7FCBFE00459200 /* Recast.h */ = {
|
6B137C7E0F7FCBFE00459200 /* Recast.h */ = {
|
||||||
uiCtxt = {
|
uiCtxt = {
|
||||||
sepNavIntBoundsRect = "{{0, 0}, {931, 8606}}";
|
sepNavIntBoundsRect = "{{0, 0}, {931, 9087}}";
|
||||||
sepNavSelRange = "{23762, 14}";
|
sepNavSelRange = "{12869, 0}";
|
||||||
sepNavVisRange = "{22925, 2730}";
|
sepNavVisRange = "{12510, 812}";
|
||||||
sepNavWindowFrame = "{{15, 51}, {1214, 722}}";
|
sepNavWindowFrame = "{{15, 51}, {1214, 722}}";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
@ -389,9 +423,9 @@
|
|||||||
};
|
};
|
||||||
6B137C890F7FCC1100459200 /* RecastRegion.cpp */ = {
|
6B137C890F7FCC1100459200 /* RecastRegion.cpp */ = {
|
||||||
uiCtxt = {
|
uiCtxt = {
|
||||||
sepNavIntBoundsRect = "{{0, 0}, {931, 16926}}";
|
sepNavIntBoundsRect = "{{0, 0}, {931, 16380}}";
|
||||||
sepNavSelRange = "{22090, 0}";
|
sepNavSelRange = "{25263, 0}";
|
||||||
sepNavVisRange = "{21330, 766}";
|
sepNavVisRange = "{24701, 1143}";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
6B1632F2126830210083FC15 /* PBXTextBookmark */ = {
|
6B1632F2126830210083FC15 /* PBXTextBookmark */ = {
|
||||||
@ -409,7 +443,7 @@
|
|||||||
fRef = 6B25B6180FFA62BE004F1BC4 /* main.cpp */;
|
fRef = 6B25B6180FFA62BE004F1BC4 /* main.cpp */;
|
||||||
name = "main.cpp: 897";
|
name = "main.cpp: 897";
|
||||||
rLen = 0;
|
rLen = 0;
|
||||||
rLoc = 20913;
|
rLoc = 21072;
|
||||||
rType = 0;
|
rType = 0;
|
||||||
vrLen = 894;
|
vrLen = 894;
|
||||||
vrLoc = 20326;
|
vrLoc = 20326;
|
||||||
@ -564,6 +598,350 @@
|
|||||||
vrLen = 1217;
|
vrLen = 1217;
|
||||||
vrLoc = 672;
|
vrLoc = 672;
|
||||||
};
|
};
|
||||||
|
6B16331A126833820083FC15 /* PBXTextBookmark */ = {
|
||||||
|
isa = PBXTextBookmark;
|
||||||
|
fRef = 6B8DE88B10B69E4C00DF20FB /* DetourNavMesh.h */;
|
||||||
|
name = "DetourNavMesh.h: 37";
|
||||||
|
rLen = 0;
|
||||||
|
rLoc = 1521;
|
||||||
|
rType = 0;
|
||||||
|
vrLen = 1171;
|
||||||
|
vrLoc = 1163;
|
||||||
|
};
|
||||||
|
6B16331D126833AA0083FC15 /* PBXTextBookmark */ = {
|
||||||
|
isa = PBXTextBookmark;
|
||||||
|
fRef = 6B8DE88B10B69E4C00DF20FB /* DetourNavMesh.h */;
|
||||||
|
name = "DetourNavMesh.h: 37";
|
||||||
|
rLen = 0;
|
||||||
|
rLoc = 1521;
|
||||||
|
rType = 0;
|
||||||
|
vrLen = 1171;
|
||||||
|
vrLoc = 1163;
|
||||||
|
};
|
||||||
|
6B16338112684C6F0083FC15 /* PBXTextBookmark */ = {
|
||||||
|
isa = PBXTextBookmark;
|
||||||
|
fRef = 6B8DE88B10B69E4C00DF20FB /* DetourNavMesh.h */;
|
||||||
|
name = "DetourNavMesh.h: 39";
|
||||||
|
rLen = 0;
|
||||||
|
rLoc = 1578;
|
||||||
|
rType = 0;
|
||||||
|
vrLen = 1171;
|
||||||
|
vrLoc = 1163;
|
||||||
|
};
|
||||||
|
6B16338212684C6F0083FC15 /* PBXTextBookmark */ = {
|
||||||
|
isa = PBXTextBookmark;
|
||||||
|
fRef = 6B137C890F7FCC1100459200 /* RecastRegion.cpp */;
|
||||||
|
name = "RecastRegion.cpp: 917";
|
||||||
|
rLen = 0;
|
||||||
|
rLoc = 22090;
|
||||||
|
rType = 0;
|
||||||
|
vrLen = 980;
|
||||||
|
vrLoc = 21178;
|
||||||
|
};
|
||||||
|
6B16338312684C6F0083FC15 /* PBXTextBookmark */ = {
|
||||||
|
isa = PBXTextBookmark;
|
||||||
|
fRef = 6B137C890F7FCC1100459200 /* RecastRegion.cpp */;
|
||||||
|
name = "RecastRegion.cpp: 1054";
|
||||||
|
rLen = 0;
|
||||||
|
rLoc = 25263;
|
||||||
|
rType = 0;
|
||||||
|
vrLen = 1143;
|
||||||
|
vrLoc = 24701;
|
||||||
|
};
|
||||||
|
6B1633B6126850730083FC15 /* PBXTextBookmark */ = {
|
||||||
|
isa = PBXTextBookmark;
|
||||||
|
fRef = 6B137C890F7FCC1100459200 /* RecastRegion.cpp */;
|
||||||
|
name = "RecastRegion.cpp: 1054";
|
||||||
|
rLen = 0;
|
||||||
|
rLoc = 25263;
|
||||||
|
rType = 0;
|
||||||
|
vrLen = 1143;
|
||||||
|
vrLoc = 24701;
|
||||||
|
};
|
||||||
|
6B1633C1126850AB0083FC15 /* PBXTextBookmark */ = {
|
||||||
|
isa = PBXTextBookmark;
|
||||||
|
fRef = 6B137C890F7FCC1100459200 /* RecastRegion.cpp */;
|
||||||
|
name = "RecastRegion.cpp: 1054";
|
||||||
|
rLen = 0;
|
||||||
|
rLoc = 25263;
|
||||||
|
rType = 0;
|
||||||
|
vrLen = 1143;
|
||||||
|
vrLoc = 24701;
|
||||||
|
};
|
||||||
|
6B16357012687A5D0083FC15 /* PBXTextBookmark */ = {
|
||||||
|
isa = PBXTextBookmark;
|
||||||
|
fRef = 6B137C890F7FCC1100459200 /* RecastRegion.cpp */;
|
||||||
|
name = "RecastRegion.cpp: 1054";
|
||||||
|
rLen = 0;
|
||||||
|
rLoc = 25263;
|
||||||
|
rType = 0;
|
||||||
|
vrLen = 1143;
|
||||||
|
vrLoc = 24701;
|
||||||
|
};
|
||||||
|
6B16357112687A5D0083FC15 /* PBXTextBookmark */ = {
|
||||||
|
isa = PBXTextBookmark;
|
||||||
|
fRef = 6B9EFF0812281C3E00535FF1 /* DetourObstacleAvoidance.cpp */;
|
||||||
|
name = "DetourObstacleAvoidance.cpp: 529";
|
||||||
|
rLen = 0;
|
||||||
|
rLoc = 12772;
|
||||||
|
rType = 0;
|
||||||
|
vrLen = 920;
|
||||||
|
vrLoc = 12687;
|
||||||
|
};
|
||||||
|
6B16357212687A5D0083FC15 /* PBXTextBookmark */ = {
|
||||||
|
isa = PBXTextBookmark;
|
||||||
|
fRef = 6B25B6180FFA62BE004F1BC4 /* main.cpp */;
|
||||||
|
name = "main.cpp: 65";
|
||||||
|
rLen = 0;
|
||||||
|
rLoc = 1985;
|
||||||
|
rType = 0;
|
||||||
|
vrLen = 1182;
|
||||||
|
vrLoc = 1406;
|
||||||
|
};
|
||||||
|
6B16357312687A5D0083FC15 /* PBXTextBookmark */ = {
|
||||||
|
isa = PBXTextBookmark;
|
||||||
|
fRef = 6B25B6180FFA62BE004F1BC4 /* main.cpp */;
|
||||||
|
name = "main.cpp: 372";
|
||||||
|
rLen = 0;
|
||||||
|
rLoc = 8781;
|
||||||
|
rType = 0;
|
||||||
|
vrLen = 1047;
|
||||||
|
vrLoc = 8332;
|
||||||
|
};
|
||||||
|
6B16357512687A700083FC15 /* PBXTextBookmark */ = {
|
||||||
|
isa = PBXTextBookmark;
|
||||||
|
fRef = 6B25B6180FFA62BE004F1BC4 /* main.cpp */;
|
||||||
|
name = "main.cpp: 381";
|
||||||
|
rLen = 0;
|
||||||
|
rLoc = 8957;
|
||||||
|
rType = 0;
|
||||||
|
vrLen = 977;
|
||||||
|
vrLoc = 8445;
|
||||||
|
};
|
||||||
|
6B16357612687A750083FC15 /* PBXTextBookmark */ = {
|
||||||
|
isa = PBXTextBookmark;
|
||||||
|
fRef = 6B25B6180FFA62BE004F1BC4 /* main.cpp */;
|
||||||
|
name = "main.cpp: 381";
|
||||||
|
rLen = 0;
|
||||||
|
rLoc = 8957;
|
||||||
|
rType = 0;
|
||||||
|
vrLen = 977;
|
||||||
|
vrLoc = 8445;
|
||||||
|
};
|
||||||
|
6B16357712687A7E0083FC15 /* PBXTextBookmark */ = {
|
||||||
|
isa = PBXTextBookmark;
|
||||||
|
fRef = 6B25B6180FFA62BE004F1BC4 /* main.cpp */;
|
||||||
|
name = "main.cpp: 381";
|
||||||
|
rLen = 0;
|
||||||
|
rLoc = 8957;
|
||||||
|
rType = 0;
|
||||||
|
vrLen = 358;
|
||||||
|
vrLoc = 8445;
|
||||||
|
};
|
||||||
|
6B16358C12687D740083FC15 /* PBXTextBookmark */ = {
|
||||||
|
isa = PBXTextBookmark;
|
||||||
|
fRef = 6B25B6180FFA62BE004F1BC4 /* main.cpp */;
|
||||||
|
name = "main.cpp: 368";
|
||||||
|
rLen = 0;
|
||||||
|
rLoc = 8628;
|
||||||
|
rType = 0;
|
||||||
|
vrLen = 1109;
|
||||||
|
vrLoc = 8158;
|
||||||
|
};
|
||||||
|
6B16358D12687D740083FC15 /* PBXTextBookmark */ = {
|
||||||
|
isa = PBXTextBookmark;
|
||||||
|
fRef = 6BB7FDA310F36EFC006DA0A6 /* InputGeom.h */;
|
||||||
|
name = "InputGeom.h: 67";
|
||||||
|
rLen = 0;
|
||||||
|
rLoc = 2249;
|
||||||
|
rType = 0;
|
||||||
|
vrLen = 2148;
|
||||||
|
vrLoc = 1355;
|
||||||
|
};
|
||||||
|
6B16358E12687D740083FC15 /* PBXTextBookmark */ = {
|
||||||
|
isa = PBXTextBookmark;
|
||||||
|
fRef = 6BB788180FC04753003C24DB /* ChunkyTriMesh.h */;
|
||||||
|
name = "ChunkyTriMesh.h: 46";
|
||||||
|
rLen = 26;
|
||||||
|
rLoc = 1575;
|
||||||
|
rType = 0;
|
||||||
|
vrLen = 1115;
|
||||||
|
vrLoc = 133;
|
||||||
|
};
|
||||||
|
6B16358F12687D740083FC15 /* PBXTextBookmark */ = {
|
||||||
|
isa = PBXTextBookmark;
|
||||||
|
fRef = 6BB788160FC0472B003C24DB /* ChunkyTriMesh.cpp */;
|
||||||
|
name = "ChunkyTriMesh.cpp: 213";
|
||||||
|
rLen = 26;
|
||||||
|
rLoc = 5408;
|
||||||
|
rType = 0;
|
||||||
|
vrLen = 832;
|
||||||
|
vrLoc = 4979;
|
||||||
|
};
|
||||||
|
6B16359012687D740083FC15 /* PBXTextBookmark */ = {
|
||||||
|
isa = PBXTextBookmark;
|
||||||
|
fRef = 6B2AEC520FFB8958005BE9CC /* Sample_TileMesh.cpp */;
|
||||||
|
name = "Sample_TileMesh.cpp: 958";
|
||||||
|
rLen = 0;
|
||||||
|
rLoc = 26529;
|
||||||
|
rType = 0;
|
||||||
|
vrLen = 958;
|
||||||
|
vrLoc = 26138;
|
||||||
|
};
|
||||||
|
6B16359112687D740083FC15 /* PBXTextBookmark */ = {
|
||||||
|
isa = PBXTextBookmark;
|
||||||
|
fRef = 6B98463211E6144400FA177B /* Sample_SoloMeshTiled.cpp */;
|
||||||
|
name = "Sample_SoloMeshTiled.cpp: 800";
|
||||||
|
rLen = 959;
|
||||||
|
rLoc = 23991;
|
||||||
|
rType = 0;
|
||||||
|
vrLen = 1174;
|
||||||
|
vrLoc = 24082;
|
||||||
|
};
|
||||||
|
6B16359212687D740083FC15 /* PBXTextBookmark */ = {
|
||||||
|
isa = PBXTextBookmark;
|
||||||
|
fRef = 6BB7FDA410F36F0E006DA0A6 /* InputGeom.cpp */;
|
||||||
|
name = "InputGeom.cpp: 313";
|
||||||
|
rLen = 0;
|
||||||
|
rLoc = 7404;
|
||||||
|
rType = 0;
|
||||||
|
vrLen = 721;
|
||||||
|
vrLoc = 7309;
|
||||||
|
};
|
||||||
|
6B16359312687D740083FC15 /* PBXTextBookmark */ = {
|
||||||
|
isa = PBXTextBookmark;
|
||||||
|
fRef = 6B137C7E0F7FCBFE00459200 /* Recast.h */;
|
||||||
|
rLen = 0;
|
||||||
|
rLoc = 369;
|
||||||
|
rType = 1;
|
||||||
|
};
|
||||||
|
6B16359412687D740083FC15 /* PBXTextBookmark */ = {
|
||||||
|
isa = PBXTextBookmark;
|
||||||
|
fRef = 6B137C7E0F7FCBFE00459200 /* Recast.h */;
|
||||||
|
name = "Recast.h: 358";
|
||||||
|
rLen = 0;
|
||||||
|
rLoc = 12869;
|
||||||
|
rType = 0;
|
||||||
|
vrLen = 781;
|
||||||
|
vrLoc = 12510;
|
||||||
|
};
|
||||||
|
6B16359512687D840083FC15 /* PBXTextBookmark */ = {
|
||||||
|
isa = PBXTextBookmark;
|
||||||
|
fRef = 6B25B6180FFA62BE004F1BC4 /* main.cpp */;
|
||||||
|
name = "main.cpp: 381";
|
||||||
|
rLen = 0;
|
||||||
|
rLoc = 8957;
|
||||||
|
rType = 0;
|
||||||
|
vrLen = 358;
|
||||||
|
vrLoc = 8445;
|
||||||
|
};
|
||||||
|
6B16359612687D840083FC15 /* PBXTextBookmark */ = {
|
||||||
|
isa = PBXTextBookmark;
|
||||||
|
fRef = 6B137C7E0F7FCBFE00459200 /* Recast.h */;
|
||||||
|
name = "Recast.h: 358";
|
||||||
|
rLen = 0;
|
||||||
|
rLoc = 12869;
|
||||||
|
rType = 0;
|
||||||
|
vrLen = 455;
|
||||||
|
vrLoc = 12510;
|
||||||
|
};
|
||||||
|
6B16359712687D840083FC15 /* PBXTextBookmark */ = {
|
||||||
|
isa = PBXTextBookmark;
|
||||||
|
fRef = 6BB7FDA410F36F0E006DA0A6 /* InputGeom.cpp */;
|
||||||
|
rLen = 0;
|
||||||
|
rLoc = 311;
|
||||||
|
rType = 1;
|
||||||
|
};
|
||||||
|
6B16359812687D840083FC15 /* PBXTextBookmark */ = {
|
||||||
|
isa = PBXTextBookmark;
|
||||||
|
fRef = 6BB7FDA410F36F0E006DA0A6 /* InputGeom.cpp */;
|
||||||
|
name = "InputGeom.cpp: 320";
|
||||||
|
rLen = 0;
|
||||||
|
rLoc = 7607;
|
||||||
|
rType = 0;
|
||||||
|
vrLen = 437;
|
||||||
|
vrLoc = 7651;
|
||||||
|
};
|
||||||
|
6B16359D12687D980083FC15 /* PBXTextBookmark */ = {
|
||||||
|
isa = PBXTextBookmark;
|
||||||
|
fRef = 6B137C7E0F7FCBFE00459200 /* Recast.h */;
|
||||||
|
name = "Recast.h: 358";
|
||||||
|
rLen = 0;
|
||||||
|
rLoc = 12869;
|
||||||
|
rType = 0;
|
||||||
|
vrLen = 812;
|
||||||
|
vrLoc = 12510;
|
||||||
|
};
|
||||||
|
6B16359E12687D980083FC15 /* PBXTextBookmark */ = {
|
||||||
|
isa = PBXTextBookmark;
|
||||||
|
fRef = 6BB7FDA410F36F0E006DA0A6 /* InputGeom.cpp */;
|
||||||
|
name = "InputGeom.cpp: 326";
|
||||||
|
rLen = 0;
|
||||||
|
rLoc = 7768;
|
||||||
|
rType = 0;
|
||||||
|
vrLen = 709;
|
||||||
|
vrLoc = 7494;
|
||||||
|
};
|
||||||
|
6B1635A212687DAD0083FC15 /* PBXTextBookmark */ = {
|
||||||
|
isa = PBXTextBookmark;
|
||||||
|
fRef = 6BB7FDA410F36F0E006DA0A6 /* InputGeom.cpp */;
|
||||||
|
name = "InputGeom.cpp: 320";
|
||||||
|
rLen = 0;
|
||||||
|
rLoc = 7618;
|
||||||
|
rType = 0;
|
||||||
|
vrLen = 770;
|
||||||
|
vrLoc = 7508;
|
||||||
|
};
|
||||||
|
6B1635A412687DC70083FC15 /* PBXTextBookmark */ = {
|
||||||
|
isa = PBXTextBookmark;
|
||||||
|
fRef = 6BB7FDA410F36F0E006DA0A6 /* InputGeom.cpp */;
|
||||||
|
name = "InputGeom.cpp: 320";
|
||||||
|
rLen = 0;
|
||||||
|
rLoc = 7619;
|
||||||
|
rType = 0;
|
||||||
|
vrLen = 770;
|
||||||
|
vrLoc = 7508;
|
||||||
|
};
|
||||||
|
6B1635A512687DCA0083FC15 /* PBXTextBookmark */ = {
|
||||||
|
isa = PBXTextBookmark;
|
||||||
|
fRef = 6BB7FDA410F36F0E006DA0A6 /* InputGeom.cpp */;
|
||||||
|
name = "InputGeom.cpp: 320";
|
||||||
|
rLen = 0;
|
||||||
|
rLoc = 7619;
|
||||||
|
rType = 0;
|
||||||
|
vrLen = 770;
|
||||||
|
vrLoc = 7508;
|
||||||
|
};
|
||||||
|
6B1635A612687DDA0083FC15 /* PBXTextBookmark */ = {
|
||||||
|
isa = PBXTextBookmark;
|
||||||
|
fRef = 6BB7FDA410F36F0E006DA0A6 /* InputGeom.cpp */;
|
||||||
|
name = "InputGeom.cpp: 320";
|
||||||
|
rLen = 0;
|
||||||
|
rLoc = 7619;
|
||||||
|
rType = 0;
|
||||||
|
vrLen = 439;
|
||||||
|
vrLoc = 7651;
|
||||||
|
};
|
||||||
|
6B1635A712687DDB0083FC15 /* PBXTextBookmark */ = {
|
||||||
|
isa = PBXTextBookmark;
|
||||||
|
fRef = 6BB7FDA410F36F0E006DA0A6 /* InputGeom.cpp */;
|
||||||
|
name = "InputGeom.cpp: 320";
|
||||||
|
rLen = 0;
|
||||||
|
rLoc = 7619;
|
||||||
|
rType = 0;
|
||||||
|
vrLen = 770;
|
||||||
|
vrLoc = 7508;
|
||||||
|
};
|
||||||
|
6B1635A812687E3E0083FC15 /* PBXTextBookmark */ = {
|
||||||
|
isa = PBXTextBookmark;
|
||||||
|
fRef = 6BB7FDA410F36F0E006DA0A6 /* InputGeom.cpp */;
|
||||||
|
name = "InputGeom.cpp: 304";
|
||||||
|
rLen = 0;
|
||||||
|
rLoc = 7438;
|
||||||
|
rType = 0;
|
||||||
|
vrLen = 766;
|
||||||
|
vrLoc = 7095;
|
||||||
|
};
|
||||||
6B1C8E08121EB4FF0048697F /* PBXTextBookmark */ = {
|
6B1C8E08121EB4FF0048697F /* PBXTextBookmark */ = {
|
||||||
isa = PBXTextBookmark;
|
isa = PBXTextBookmark;
|
||||||
fRef = 6B2AEC510FFB8946005BE9CC /* Sample_TileMesh.h */;
|
fRef = 6B2AEC510FFB8946005BE9CC /* Sample_TileMesh.h */;
|
||||||
@ -590,9 +968,9 @@
|
|||||||
};
|
};
|
||||||
6B25B6180FFA62BE004F1BC4 /* main.cpp */ = {
|
6B25B6180FFA62BE004F1BC4 /* main.cpp */ = {
|
||||||
uiCtxt = {
|
uiCtxt = {
|
||||||
sepNavIntBoundsRect = "{{0, 0}, {1217, 11739}}";
|
sepNavIntBoundsRect = "{{0, 0}, {1217, 12025}}";
|
||||||
sepNavSelRange = "{1985, 0}";
|
sepNavSelRange = "{8957, 0}";
|
||||||
sepNavVisRange = "{1265, 437}";
|
sepNavVisRange = "{8445, 358}";
|
||||||
sepNavWindowFrame = "{{15, 51}, {1214, 722}}";
|
sepNavWindowFrame = "{{15, 51}, {1214, 722}}";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
@ -606,9 +984,9 @@
|
|||||||
};
|
};
|
||||||
6B2AEC520FFB8958005BE9CC /* Sample_TileMesh.cpp */ = {
|
6B2AEC520FFB8958005BE9CC /* Sample_TileMesh.cpp */ = {
|
||||||
uiCtxt = {
|
uiCtxt = {
|
||||||
sepNavIntBoundsRect = "{{0, 0}, {931, 16068}}";
|
sepNavIntBoundsRect = "{{0, 0}, {931, 15340}}";
|
||||||
sepNavSelRange = "{7100, 0}";
|
sepNavSelRange = "{26529, 0}";
|
||||||
sepNavVisRange = "{6402, 830}";
|
sepNavVisRange = "{26138, 958}";
|
||||||
sepNavWindowFrame = "{{38, 30}, {1214, 722}}";
|
sepNavWindowFrame = "{{38, 30}, {1214, 722}}";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
@ -649,8 +1027,7 @@
|
|||||||
hitCount = 0;
|
hitCount = 0;
|
||||||
ignoreCount = 0;
|
ignoreCount = 0;
|
||||||
lineNumber = 362;
|
lineNumber = 362;
|
||||||
location = Recast;
|
modificationTime = 308826279.220464;
|
||||||
modificationTime = 307623703.350588;
|
|
||||||
originalNumberOfMultipleMatches = 1;
|
originalNumberOfMultipleMatches = 1;
|
||||||
state = 1;
|
state = 1;
|
||||||
};
|
};
|
||||||
@ -881,9 +1258,9 @@
|
|||||||
};
|
};
|
||||||
6B8DE88B10B69E4C00DF20FB /* DetourNavMesh.h */ = {
|
6B8DE88B10B69E4C00DF20FB /* DetourNavMesh.h */ = {
|
||||||
uiCtxt = {
|
uiCtxt = {
|
||||||
sepNavIntBoundsRect = "{{0, 0}, {931, 5135}}";
|
sepNavIntBoundsRect = "{{0, 0}, {931, 5200}}";
|
||||||
sepNavSelRange = "{1161, 0}";
|
sepNavSelRange = "{1578, 0}";
|
||||||
sepNavVisRange = "{672, 1217}";
|
sepNavVisRange = "{1163, 1171}";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
6B8DE88C10B69E4C00DF20FB /* DetourNavMeshBuilder.h */ = {
|
6B8DE88C10B69E4C00DF20FB /* DetourNavMeshBuilder.h */ = {
|
||||||
@ -917,7 +1294,7 @@
|
|||||||
ignoreCount = 0;
|
ignoreCount = 0;
|
||||||
lineNumber = 78;
|
lineNumber = 78;
|
||||||
location = Recast;
|
location = Recast;
|
||||||
modificationTime = 307623700.11648;
|
modificationTime = 308826245.414741;
|
||||||
originalNumberOfMultipleMatches = 0;
|
originalNumberOfMultipleMatches = 0;
|
||||||
state = 2;
|
state = 2;
|
||||||
};
|
};
|
||||||
@ -934,7 +1311,7 @@
|
|||||||
hitCount = 0;
|
hitCount = 0;
|
||||||
ignoreCount = 0;
|
ignoreCount = 0;
|
||||||
lineNumber = 131;
|
lineNumber = 131;
|
||||||
modificationTime = 307623700.116675;
|
modificationTime = 308826245.41512;
|
||||||
originalNumberOfMultipleMatches = 1;
|
originalNumberOfMultipleMatches = 1;
|
||||||
state = 0;
|
state = 0;
|
||||||
};
|
};
|
||||||
@ -977,9 +1354,9 @@
|
|||||||
};
|
};
|
||||||
6B98463211E6144400FA177B /* Sample_SoloMeshTiled.cpp */ = {
|
6B98463211E6144400FA177B /* Sample_SoloMeshTiled.cpp */ = {
|
||||||
uiCtxt = {
|
uiCtxt = {
|
||||||
sepNavIntBoundsRect = "{{0, 0}, {1013, 14274}}";
|
sepNavIntBoundsRect = "{{0, 0}, {992, 14391}}";
|
||||||
sepNavSelRange = "{26519, 0}";
|
sepNavSelRange = "{23991, 959}";
|
||||||
sepNavVisRange = "{20368, 1429}";
|
sepNavVisRange = "{24082, 1174}";
|
||||||
sepNavWindowFrame = "{{38, 30}, {1214, 722}}";
|
sepNavWindowFrame = "{{38, 30}, {1214, 722}}";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
@ -1030,9 +1407,9 @@
|
|||||||
};
|
};
|
||||||
6B9EFF0812281C3E00535FF1 /* DetourObstacleAvoidance.cpp */ = {
|
6B9EFF0812281C3E00535FF1 /* DetourObstacleAvoidance.cpp */ = {
|
||||||
uiCtxt = {
|
uiCtxt = {
|
||||||
sepNavIntBoundsRect = "{{0, 0}, {931, 7319}}";
|
sepNavIntBoundsRect = "{{0, 0}, {931, 7397}}";
|
||||||
sepNavSelRange = "{6519, 782}";
|
sepNavSelRange = "{12772, 0}";
|
||||||
sepNavVisRange = "{6947, 765}";
|
sepNavVisRange = "{12687, 920}";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
6BA1E88810C7BFC9008007F6 /* Sample_SoloMeshSimple.cpp */ = {
|
6BA1E88810C7BFC9008007F6 /* Sample_SoloMeshSimple.cpp */ = {
|
||||||
@ -1089,8 +1466,7 @@
|
|||||||
hitCount = 0;
|
hitCount = 0;
|
||||||
ignoreCount = 0;
|
ignoreCount = 0;
|
||||||
lineNumber = 137;
|
lineNumber = 137;
|
||||||
location = Recast;
|
modificationTime = 308826279.220855;
|
||||||
modificationTime = 307623703.369916;
|
|
||||||
originalNumberOfMultipleMatches = 1;
|
originalNumberOfMultipleMatches = 1;
|
||||||
state = 1;
|
state = 1;
|
||||||
};
|
};
|
||||||
@ -1119,7 +1495,7 @@
|
|||||||
fRef = 6BB788160FC0472B003C24DB /* ChunkyTriMesh.cpp */;
|
fRef = 6BB788160FC0472B003C24DB /* ChunkyTriMesh.cpp */;
|
||||||
name = "ChunkyTriMesh.cpp: 59";
|
name = "ChunkyTriMesh.cpp: 59";
|
||||||
rLen = 0;
|
rLen = 0;
|
||||||
rLoc = 1793;
|
rLoc = 1811;
|
||||||
rType = 0;
|
rType = 0;
|
||||||
vrLen = 552;
|
vrLen = 552;
|
||||||
vrLoc = 1454;
|
vrLoc = 1454;
|
||||||
@ -1129,7 +1505,7 @@
|
|||||||
fRef = 6BB7FDA410F36F0E006DA0A6 /* InputGeom.cpp */;
|
fRef = 6BB7FDA410F36F0E006DA0A6 /* InputGeom.cpp */;
|
||||||
name = "InputGeom.cpp: 395";
|
name = "InputGeom.cpp: 395";
|
||||||
rLen = 0;
|
rLen = 0;
|
||||||
rLoc = 10073;
|
rLoc = 10284;
|
||||||
rType = 0;
|
rType = 0;
|
||||||
vrLen = 455;
|
vrLen = 455;
|
||||||
vrLoc = 9715;
|
vrLoc = 9715;
|
||||||
@ -1241,8 +1617,7 @@
|
|||||||
hitCount = 0;
|
hitCount = 0;
|
||||||
ignoreCount = 0;
|
ignoreCount = 0;
|
||||||
lineNumber = 45;
|
lineNumber = 45;
|
||||||
location = Recast;
|
modificationTime = 308826279.219005;
|
||||||
modificationTime = 307623703.424199;
|
|
||||||
originalNumberOfMultipleMatches = 1;
|
originalNumberOfMultipleMatches = 1;
|
||||||
state = 1;
|
state = 1;
|
||||||
};
|
};
|
||||||
@ -1472,7 +1847,7 @@
|
|||||||
fRef = 6B25B6180FFA62BE004F1BC4 /* main.cpp */;
|
fRef = 6B25B6180FFA62BE004F1BC4 /* main.cpp */;
|
||||||
name = "main.cpp: 897";
|
name = "main.cpp: 897";
|
||||||
rLen = 0;
|
rLen = 0;
|
||||||
rLoc = 20913;
|
rLoc = 21072;
|
||||||
rType = 0;
|
rType = 0;
|
||||||
vrLen = 601;
|
vrLen = 601;
|
||||||
vrLoc = 20575;
|
vrLoc = 20575;
|
||||||
@ -1552,7 +1927,7 @@
|
|||||||
fRef = 6B98463211E6144400FA177B /* Sample_SoloMeshTiled.cpp */;
|
fRef = 6B98463211E6144400FA177B /* Sample_SoloMeshTiled.cpp */;
|
||||||
name = "Sample_SoloMeshTiled.cpp: 866";
|
name = "Sample_SoloMeshTiled.cpp: 866";
|
||||||
rLen = 0;
|
rLen = 0;
|
||||||
rLoc = 26519;
|
rLoc = 26528;
|
||||||
rType = 0;
|
rType = 0;
|
||||||
vrLen = 1429;
|
vrLen = 1429;
|
||||||
vrLoc = 20368;
|
vrLoc = 20368;
|
||||||
@ -1639,16 +2014,16 @@
|
|||||||
};
|
};
|
||||||
6BB788160FC0472B003C24DB /* ChunkyTriMesh.cpp */ = {
|
6BB788160FC0472B003C24DB /* ChunkyTriMesh.cpp */ = {
|
||||||
uiCtxt = {
|
uiCtxt = {
|
||||||
sepNavIntBoundsRect = "{{0, 0}, {933, 3712}}";
|
sepNavIntBoundsRect = "{{0, 0}, {931, 4316}}";
|
||||||
sepNavSelRange = "{1793, 0}";
|
sepNavSelRange = "{5408, 26}";
|
||||||
sepNavVisRange = "{1454, 552}";
|
sepNavVisRange = "{4979, 832}";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
6BB788180FC04753003C24DB /* ChunkyTriMesh.h */ = {
|
6BB788180FC04753003C24DB /* ChunkyTriMesh.h */ = {
|
||||||
uiCtxt = {
|
uiCtxt = {
|
||||||
sepNavIntBoundsRect = "{{0, 0}, {815, 800}}";
|
sepNavIntBoundsRect = "{{0, 0}, {931, 689}}";
|
||||||
sepNavSelRange = "{957, 0}";
|
sepNavSelRange = "{1575, 26}";
|
||||||
sepNavVisRange = "{396, 785}";
|
sepNavVisRange = "{133, 1115}";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
6BB7FC0910EBB6AA006DA0A6 /* NavMeshTesterTool.h */ = {
|
6BB7FC0910EBB6AA006DA0A6 /* NavMeshTesterTool.h */ = {
|
||||||
@ -1668,16 +2043,16 @@
|
|||||||
};
|
};
|
||||||
6BB7FDA310F36EFC006DA0A6 /* InputGeom.h */ = {
|
6BB7FDA310F36EFC006DA0A6 /* InputGeom.h */ = {
|
||||||
uiCtxt = {
|
uiCtxt = {
|
||||||
sepNavIntBoundsRect = "{{0, 0}, {933, 1584}}";
|
sepNavIntBoundsRect = "{{0, 0}, {931, 1196}}";
|
||||||
sepNavSelRange = "{1880, 0}";
|
sepNavSelRange = "{2249, 0}";
|
||||||
sepNavVisRange = "{1682, 763}";
|
sepNavVisRange = "{1355, 2148}";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
6BB7FDA410F36F0E006DA0A6 /* InputGeom.cpp */ = {
|
6BB7FDA410F36F0E006DA0A6 /* InputGeom.cpp */ = {
|
||||||
uiCtxt = {
|
uiCtxt = {
|
||||||
sepNavIntBoundsRect = "{{0, 0}, {933, 7152}}";
|
sepNavIntBoundsRect = "{{0, 0}, {931, 6214}}";
|
||||||
sepNavSelRange = "{10073, 0}";
|
sepNavSelRange = "{7438, 0}";
|
||||||
sepNavVisRange = "{9715, 455}";
|
sepNavVisRange = "{7095, 766}";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
6BB93C7710CFE1D500F74F2B /* DebugDraw.h */ = {
|
6BB93C7710CFE1D500F74F2B /* DebugDraw.h */ = {
|
||||||
@ -1822,8 +2197,7 @@
|
|||||||
hitCount = 0;
|
hitCount = 0;
|
||||||
ignoreCount = 0;
|
ignoreCount = 0;
|
||||||
lineNumber = 279;
|
lineNumber = 279;
|
||||||
location = Recast;
|
modificationTime = 308826279.219623;
|
||||||
modificationTime = 307623703.336449;
|
|
||||||
originalNumberOfMultipleMatches = 1;
|
originalNumberOfMultipleMatches = 1;
|
||||||
state = 1;
|
state = 1;
|
||||||
};
|
};
|
||||||
@ -1948,8 +2322,7 @@
|
|||||||
hitCount = 0;
|
hitCount = 0;
|
||||||
ignoreCount = 0;
|
ignoreCount = 0;
|
||||||
lineNumber = 541;
|
lineNumber = 541;
|
||||||
location = Recast;
|
modificationTime = 308826279.220026;
|
||||||
modificationTime = 307623703.377993;
|
|
||||||
originalNumberOfMultipleMatches = 1;
|
originalNumberOfMultipleMatches = 1;
|
||||||
state = 1;
|
state = 1;
|
||||||
};
|
};
|
||||||
@ -2008,8 +2381,7 @@
|
|||||||
hitCount = 0;
|
hitCount = 0;
|
||||||
ignoreCount = 0;
|
ignoreCount = 0;
|
||||||
lineNumber = 480;
|
lineNumber = 480;
|
||||||
location = Recast;
|
modificationTime = 308826279.221242;
|
||||||
modificationTime = 307623703.394133;
|
|
||||||
originalNumberOfMultipleMatches = 1;
|
originalNumberOfMultipleMatches = 1;
|
||||||
state = 1;
|
state = 1;
|
||||||
};
|
};
|
||||||
|
@ -284,14 +284,13 @@
|
|||||||
<key>PBXSmartGroupTreeModuleOutlineStateSelectionKey</key>
|
<key>PBXSmartGroupTreeModuleOutlineStateSelectionKey</key>
|
||||||
<array>
|
<array>
|
||||||
<array>
|
<array>
|
||||||
<integer>15</integer>
|
<integer>82</integer>
|
||||||
<integer>11</integer>
|
|
||||||
<integer>1</integer>
|
<integer>1</integer>
|
||||||
<integer>0</integer>
|
<integer>0</integer>
|
||||||
</array>
|
</array>
|
||||||
</array>
|
</array>
|
||||||
<key>PBXSmartGroupTreeModuleOutlineStateVisibleRectKey</key>
|
<key>PBXSmartGroupTreeModuleOutlineStateVisibleRectKey</key>
|
||||||
<string>{{0, 0}, {264, 660}}</string>
|
<string>{{0, 1242}, {264, 660}}</string>
|
||||||
</dict>
|
</dict>
|
||||||
<key>PBXTopSmartGroupGIDs</key>
|
<key>PBXTopSmartGroupGIDs</key>
|
||||||
<array/>
|
<array/>
|
||||||
@ -326,7 +325,7 @@
|
|||||||
<key>PBXProjectModuleGUID</key>
|
<key>PBXProjectModuleGUID</key>
|
||||||
<string>6B8632A30F78115100E2684A</string>
|
<string>6B8632A30F78115100E2684A</string>
|
||||||
<key>PBXProjectModuleLabel</key>
|
<key>PBXProjectModuleLabel</key>
|
||||||
<string>DetourNavMesh.h</string>
|
<string>InputGeom.cpp</string>
|
||||||
<key>PBXSplitModuleInNavigatorKey</key>
|
<key>PBXSplitModuleInNavigatorKey</key>
|
||||||
<dict>
|
<dict>
|
||||||
<key>Split0</key>
|
<key>Split0</key>
|
||||||
@ -334,14 +333,13 @@
|
|||||||
<key>PBXProjectModuleGUID</key>
|
<key>PBXProjectModuleGUID</key>
|
||||||
<string>6B8632A40F78115100E2684A</string>
|
<string>6B8632A40F78115100E2684A</string>
|
||||||
<key>PBXProjectModuleLabel</key>
|
<key>PBXProjectModuleLabel</key>
|
||||||
<string>DetourNavMesh.h</string>
|
<string>InputGeom.cpp</string>
|
||||||
<key>_historyCapacity</key>
|
<key>_historyCapacity</key>
|
||||||
<integer>0</integer>
|
<integer>0</integer>
|
||||||
<key>bookmark</key>
|
<key>bookmark</key>
|
||||||
<string>6B163319126832D20083FC15</string>
|
<string>6B1635A812687E3E0083FC15</string>
|
||||||
<key>history</key>
|
<key>history</key>
|
||||||
<array>
|
<array>
|
||||||
<string>6BBB4AA5115B4F3400CF791D</string>
|
|
||||||
<string>6BBB4C34115B7A3D00CF791D</string>
|
<string>6BBB4C34115B7A3D00CF791D</string>
|
||||||
<string>6BF5F27311747CFA000502A6</string>
|
<string>6BF5F27311747CFA000502A6</string>
|
||||||
<string>6BF5F2E411748884000502A6</string>
|
<string>6BF5F2E411748884000502A6</string>
|
||||||
@ -366,12 +364,9 @@
|
|||||||
<string>6BD402811224393000995864</string>
|
<string>6BD402811224393000995864</string>
|
||||||
<string>6BD4028C1224399300995864</string>
|
<string>6BD4028C1224399300995864</string>
|
||||||
<string>6BD4029B12243A8000995864</string>
|
<string>6BD4029B12243A8000995864</string>
|
||||||
<string>6BD402B4122441CB00995864</string>
|
|
||||||
<string>6B920A521225C0AC00D5B5AD</string>
|
<string>6B920A521225C0AC00D5B5AD</string>
|
||||||
<string>6B920A6D1225C5DD00D5B5AD</string>
|
<string>6B920A6D1225C5DD00D5B5AD</string>
|
||||||
<string>6BA7F8EC1227002300C8C47A</string>
|
<string>6BA7F8EC1227002300C8C47A</string>
|
||||||
<string>6BA7F8ED1227002300C8C47A</string>
|
|
||||||
<string>6BA7F8EE1227002300C8C47A</string>
|
|
||||||
<string>6B8476F9122D000800ADF63D</string>
|
<string>6B8476F9122D000800ADF63D</string>
|
||||||
<string>6B847779122D223D00ADF63D</string>
|
<string>6B847779122D223D00ADF63D</string>
|
||||||
<string>6B84778B122D279700ADF63D</string>
|
<string>6B84778B122D279700ADF63D</string>
|
||||||
@ -403,7 +398,6 @@
|
|||||||
<string>6BA8CF951255D97400272A3B</string>
|
<string>6BA8CF951255D97400272A3B</string>
|
||||||
<string>6BA8CFA81255DC6500272A3B</string>
|
<string>6BA8CFA81255DC6500272A3B</string>
|
||||||
<string>6BA8CFBE1255DE0500272A3B</string>
|
<string>6BA8CFBE1255DE0500272A3B</string>
|
||||||
<string>6BA8D10B125B0E8E00272A3B</string>
|
|
||||||
<string>6BA8D10C125B0E8E00272A3B</string>
|
<string>6BA8D10C125B0E8E00272A3B</string>
|
||||||
<string>6BA8D10D125B0E8E00272A3B</string>
|
<string>6BA8D10D125B0E8E00272A3B</string>
|
||||||
<string>6BB2EDF91261C75400E350F8</string>
|
<string>6BB2EDF91261C75400E350F8</string>
|
||||||
@ -414,23 +408,28 @@
|
|||||||
<string>6BB2EE351261CEB800E350F8</string>
|
<string>6BB2EE351261CEB800E350F8</string>
|
||||||
<string>6BB2EE361261CEB800E350F8</string>
|
<string>6BB2EE361261CEB800E350F8</string>
|
||||||
<string>6BB2EE3F1261D02000E350F8</string>
|
<string>6BB2EE3F1261D02000E350F8</string>
|
||||||
<string>6BB2EE641261D48100E350F8</string>
|
|
||||||
<string>6BB2EE651261D48100E350F8</string>
|
|
||||||
<string>6BB2EE661261D48100E350F8</string>
|
<string>6BB2EE661261D48100E350F8</string>
|
||||||
<string>6BB2EE671261D48100E350F8</string>
|
<string>6BB2EE671261D48100E350F8</string>
|
||||||
<string>6BB2EE681261D48100E350F8</string>
|
|
||||||
<string>6BB2EE691261D48100E350F8</string>
|
<string>6BB2EE691261D48100E350F8</string>
|
||||||
<string>6BB2EE731261DA0400E350F8</string>
|
<string>6BB2EE731261DA0400E350F8</string>
|
||||||
<string>6BB2EE7A1264CD7900E350F8</string>
|
<string>6BB2EE7A1264CD7900E350F8</string>
|
||||||
<string>6BB2EE7B1264CD7900E350F8</string>
|
<string>6BB2EE7B1264CD7900E350F8</string>
|
||||||
<string>6B1632F2126830210083FC15</string>
|
|
||||||
<string>6B16330F1268326F0083FC15</string>
|
|
||||||
<string>6B1633101268326F0083FC15</string>
|
<string>6B1633101268326F0083FC15</string>
|
||||||
<string>6B1633111268326F0083FC15</string>
|
<string>6B1633111268326F0083FC15</string>
|
||||||
<string>6B1633121268326F0083FC15</string>
|
<string>6B1633121268326F0083FC15</string>
|
||||||
<string>6B1633141268326F0083FC15</string>
|
<string>6B1633141268326F0083FC15</string>
|
||||||
<string>6B163317126832D20083FC15</string>
|
<string>6B163317126832D20083FC15</string>
|
||||||
<string>6B163318126832D20083FC15</string>
|
<string>6B16338112684C6F0083FC15</string>
|
||||||
|
<string>6B16357012687A5D0083FC15</string>
|
||||||
|
<string>6B16357112687A5D0083FC15</string>
|
||||||
|
<string>6B16358C12687D740083FC15</string>
|
||||||
|
<string>6B16358D12687D740083FC15</string>
|
||||||
|
<string>6B16358E12687D740083FC15</string>
|
||||||
|
<string>6B16358F12687D740083FC15</string>
|
||||||
|
<string>6B16359012687D740083FC15</string>
|
||||||
|
<string>6B16359112687D740083FC15</string>
|
||||||
|
<string>6B16359D12687D980083FC15</string>
|
||||||
|
<string>6B1635A612687DDA0083FC15</string>
|
||||||
</array>
|
</array>
|
||||||
</dict>
|
</dict>
|
||||||
<key>SplitCount</key>
|
<key>SplitCount</key>
|
||||||
@ -444,18 +443,18 @@
|
|||||||
<key>GeometryConfiguration</key>
|
<key>GeometryConfiguration</key>
|
||||||
<dict>
|
<dict>
|
||||||
<key>Frame</key>
|
<key>Frame</key>
|
||||||
<string>{{0, 0}, {992, 533}}</string>
|
<string>{{0, 0}, {992, 528}}</string>
|
||||||
<key>RubberWindowFrame</key>
|
<key>RubberWindowFrame</key>
|
||||||
<string>0 59 1278 719 0 0 1280 778 </string>
|
<string>0 59 1278 719 0 0 1280 778 </string>
|
||||||
</dict>
|
</dict>
|
||||||
<key>Module</key>
|
<key>Module</key>
|
||||||
<string>PBXNavigatorGroup</string>
|
<string>PBXNavigatorGroup</string>
|
||||||
<key>Proportion</key>
|
<key>Proportion</key>
|
||||||
<string>533pt</string>
|
<string>528pt</string>
|
||||||
</dict>
|
</dict>
|
||||||
<dict>
|
<dict>
|
||||||
<key>Proportion</key>
|
<key>Proportion</key>
|
||||||
<string>140pt</string>
|
<string>145pt</string>
|
||||||
<key>Tabs</key>
|
<key>Tabs</key>
|
||||||
<array>
|
<array>
|
||||||
<dict>
|
<dict>
|
||||||
@ -485,9 +484,7 @@
|
|||||||
<key>GeometryConfiguration</key>
|
<key>GeometryConfiguration</key>
|
||||||
<dict>
|
<dict>
|
||||||
<key>Frame</key>
|
<key>Frame</key>
|
||||||
<string>{{10, 27}, {992, 113}}</string>
|
<string>{{10, 27}, {992, -27}}</string>
|
||||||
<key>RubberWindowFrame</key>
|
|
||||||
<string>0 59 1278 719 0 0 1280 778 </string>
|
|
||||||
</dict>
|
</dict>
|
||||||
<key>Module</key>
|
<key>Module</key>
|
||||||
<string>PBXProjectFindModule</string>
|
<string>PBXProjectFindModule</string>
|
||||||
@ -525,7 +522,9 @@
|
|||||||
<key>GeometryConfiguration</key>
|
<key>GeometryConfiguration</key>
|
||||||
<dict>
|
<dict>
|
||||||
<key>Frame</key>
|
<key>Frame</key>
|
||||||
<string>{{10, 27}, {992, 88}}</string>
|
<string>{{10, 27}, {992, 118}}</string>
|
||||||
|
<key>RubberWindowFrame</key>
|
||||||
|
<string>0 59 1278 719 0 0 1280 778 </string>
|
||||||
</dict>
|
</dict>
|
||||||
<key>Module</key>
|
<key>Module</key>
|
||||||
<string>PBXBuildResultsModule</string>
|
<string>PBXBuildResultsModule</string>
|
||||||
|
@ -42,8 +42,11 @@ struct rcChunkyTriMesh
|
|||||||
bool rcCreateChunkyTriMesh(const float* verts, const int* tris, int ntris,
|
bool rcCreateChunkyTriMesh(const float* verts, const int* tris, int ntris,
|
||||||
int trisPerChunk, rcChunkyTriMesh* cm);
|
int trisPerChunk, rcChunkyTriMesh* cm);
|
||||||
|
|
||||||
// Returns the chunk indices which touch the input rectable.
|
// Returns the chunk indices which overlap the input rectable.
|
||||||
int rcGetChunksInRect(const rcChunkyTriMesh* cm, float bmin[2], float bmax[2], int* ids, const int maxIds);
|
int rcGetChunksOverlappingRect(const rcChunkyTriMesh* cm, float bmin[2], float bmax[2], int* ids, const int maxIds);
|
||||||
|
|
||||||
|
// Returns the chunk indices which overlap the input segment.
|
||||||
|
int rcGetChunksOverlappingSegment(const rcChunkyTriMesh* cm, float p[2], float q[2], int* ids, const int maxIds);
|
||||||
|
|
||||||
|
|
||||||
#endif // CHUNKYTRIMESH_H
|
#endif // CHUNKYTRIMESH_H
|
||||||
|
@ -19,6 +19,7 @@
|
|||||||
#include "ChunkyTriMesh.h"
|
#include "ChunkyTriMesh.h"
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
|
#include <math.h>
|
||||||
|
|
||||||
struct BoundsItem
|
struct BoundsItem
|
||||||
{
|
{
|
||||||
@ -209,9 +210,9 @@ inline bool checkOverlapRect(const float amin[2], const float amax[2],
|
|||||||
return overlap;
|
return overlap;
|
||||||
}
|
}
|
||||||
|
|
||||||
int rcGetChunksInRect(const rcChunkyTriMesh* cm,
|
int rcGetChunksOverlappingRect(const rcChunkyTriMesh* cm,
|
||||||
float bmin[2], float bmax[2],
|
float bmin[2], float bmax[2],
|
||||||
int* ids, const int maxIds)
|
int* ids, const int maxIds)
|
||||||
{
|
{
|
||||||
// Traverse tree
|
// Traverse tree
|
||||||
int i = 0;
|
int i = 0;
|
||||||
@ -243,3 +244,72 @@ int rcGetChunksInRect(const rcChunkyTriMesh* cm,
|
|||||||
return n;
|
return n;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
static bool checkOverlapSegment(const float p[2], const float q[2],
|
||||||
|
const float bmin[2], const float bmax[2])
|
||||||
|
{
|
||||||
|
static const float EPSILON = 1e-6f;
|
||||||
|
|
||||||
|
float tmin = 0;
|
||||||
|
float tmax = 1;
|
||||||
|
float d[2];
|
||||||
|
d[0] = q[0] - p[0];
|
||||||
|
d[1] = q[1] - p[1];
|
||||||
|
|
||||||
|
for (int i = 0; i < 2; i++)
|
||||||
|
{
|
||||||
|
if (fabsf(d[i]) < EPSILON)
|
||||||
|
{
|
||||||
|
// Ray is parallel to slab. No hit if origin not within slab
|
||||||
|
if (p[i] < bmin[i] || p[i] > bmax[i])
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
// Compute intersection t value of ray with near and far plane of slab
|
||||||
|
float ood = 1.0f / d[i];
|
||||||
|
float t1 = (bmin[i] - p[i]) * ood;
|
||||||
|
float t2 = (bmax[i] - p[i]) * ood;
|
||||||
|
if (t1 > t2) { float tmp = t1; t1 = t2; t2 = tmp; }
|
||||||
|
if (t1 > tmin) tmin = t1;
|
||||||
|
if (t2 < tmax) tmax = t2;
|
||||||
|
if (tmin > tmax) return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
int rcGetChunksOverlappingSegment(const rcChunkyTriMesh* cm,
|
||||||
|
float p[2], float q[2],
|
||||||
|
int* ids, const int maxIds)
|
||||||
|
{
|
||||||
|
// Traverse tree
|
||||||
|
int i = 0;
|
||||||
|
int n = 0;
|
||||||
|
while (i < cm->nnodes)
|
||||||
|
{
|
||||||
|
const rcChunkyTriMeshNode* node = &cm->nodes[i];
|
||||||
|
const bool overlap = checkOverlapSegment(p, q, node->bmin, node->bmax);
|
||||||
|
const bool isLeafNode = node->i >= 0;
|
||||||
|
|
||||||
|
if (isLeafNode && overlap)
|
||||||
|
{
|
||||||
|
if (n < maxIds)
|
||||||
|
{
|
||||||
|
ids[n] = i;
|
||||||
|
n++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (overlap || isLeafNode)
|
||||||
|
i++;
|
||||||
|
else
|
||||||
|
{
|
||||||
|
const int escapeIndex = -node->i;
|
||||||
|
i += escapeIndex;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return n;
|
||||||
|
}
|
||||||
|
@ -286,28 +286,38 @@ bool InputGeom::raycastMesh(float* src, float* dst, float& tmin)
|
|||||||
float dir[3];
|
float dir[3];
|
||||||
rcVsub(dir, dst, src);
|
rcVsub(dir, dst, src);
|
||||||
|
|
||||||
int nt = m_mesh->getTriCount();
|
float p[2], q[2];
|
||||||
const float* verts = m_mesh->getVerts();
|
p[0] = src[0];
|
||||||
const float* normals = m_mesh->getNormals();
|
p[1] = src[2];
|
||||||
const int* tris = m_mesh->getTris();
|
q[0] = dst[0];
|
||||||
|
q[1] = dst[2];
|
||||||
|
int cid[512];
|
||||||
|
const int ncid = rcGetChunksOverlappingSegment(m_chunkyMesh, p, q, cid, 512);
|
||||||
|
if (!ncid)
|
||||||
|
return false;
|
||||||
|
|
||||||
tmin = 1.0f;
|
tmin = 1.0f;
|
||||||
bool hit = false;
|
bool hit = false;
|
||||||
|
const float* verts = m_mesh->getVerts();
|
||||||
|
|
||||||
for (int i = 0; i < nt*3; i += 3)
|
for (int i = 0; i < ncid; ++i)
|
||||||
{
|
{
|
||||||
const float* n = &normals[i];
|
const rcChunkyTriMeshNode& node = m_chunkyMesh->nodes[cid[i]];
|
||||||
if (rcVdot(dir, n) > 0)
|
const int* tris = &m_chunkyMesh->tris[node.i*3];
|
||||||
continue;
|
const int ntris = node.n;
|
||||||
|
|
||||||
float t = 1;
|
for (int j = 0; j < ntris*3; ++j)
|
||||||
if (intersectSegmentTriangle(src, dst,
|
|
||||||
&verts[tris[i]*3],
|
|
||||||
&verts[tris[i+1]*3],
|
|
||||||
&verts[tris[i+2]*3], t))
|
|
||||||
{
|
{
|
||||||
if (t < tmin)
|
float t = 1;
|
||||||
tmin = t;
|
if (intersectSegmentTriangle(src, dst,
|
||||||
hit = true;
|
&verts[tris[j]*3],
|
||||||
|
&verts[tris[j+1]*3],
|
||||||
|
&verts[tris[j+2]*3], t))
|
||||||
|
{
|
||||||
|
if (t < tmin)
|
||||||
|
tmin = t;
|
||||||
|
hit = true;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -803,7 +803,7 @@ bool Sample_SoloMeshTiled::handleBuild()
|
|||||||
tbmax[0] = tileCfg.bmax[0];
|
tbmax[0] = tileCfg.bmax[0];
|
||||||
tbmax[1] = tileCfg.bmax[2];
|
tbmax[1] = tileCfg.bmax[2];
|
||||||
int cid[512];// TODO: Make grow when returning too many items.
|
int cid[512];// TODO: Make grow when returning too many items.
|
||||||
const int ncid = rcGetChunksInRect(chunkyMesh, tbmin, tbmax, cid, 512);
|
const int ncid = rcGetChunksOverlappingRect(chunkyMesh, tbmin, tbmax, cid, 512);
|
||||||
if (!ncid)
|
if (!ncid)
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
|
@ -955,7 +955,7 @@ unsigned char* Sample_TileMesh::buildTileMesh(const int tx, const int ty, const
|
|||||||
tbmax[0] = m_cfg.bmax[0];
|
tbmax[0] = m_cfg.bmax[0];
|
||||||
tbmax[1] = m_cfg.bmax[2];
|
tbmax[1] = m_cfg.bmax[2];
|
||||||
int cid[512];// TODO: Make grow when returning too many items.
|
int cid[512];// TODO: Make grow when returning too many items.
|
||||||
const int ncid = rcGetChunksInRect(chunkyMesh, tbmin, tbmax, cid, 512);
|
const int ncid = rcGetChunksOverlappingRect(chunkyMesh, tbmin, tbmax, cid, 512);
|
||||||
if (!ncid)
|
if (!ncid)
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
|
@ -365,7 +365,13 @@ int main(int /*argc*/, char** /*argv*/)
|
|||||||
if (processHitTest && geom && sample)
|
if (processHitTest && geom && sample)
|
||||||
{
|
{
|
||||||
float t;
|
float t;
|
||||||
if (geom->raycastMesh(rays, raye, t))
|
TimeVal t0 = getPerfTime();
|
||||||
|
bool hit = geom->raycastMesh(rays, raye, t);
|
||||||
|
TimeVal t1 = getPerfTime();
|
||||||
|
|
||||||
|
printf("raycast() %.4fms\n", getPerfDeltaTimeUsec(t0,t1)/1000.0f);
|
||||||
|
|
||||||
|
if (hit)
|
||||||
{
|
{
|
||||||
if (SDL_GetModState() & KMOD_CTRL)
|
if (SDL_GetModState() & KMOD_CTRL)
|
||||||
{
|
{
|
||||||
|
Loading…
x
Reference in New Issue
Block a user