Fix for Issue 128 (rest of the files)

This commit is contained in:
Mikko Mononen 2010-10-10 10:15:10 +00:00
parent c701f583da
commit e441eca3c4
4 changed files with 452 additions and 2079 deletions

File diff suppressed because it is too large Load Diff

View File

@ -200,8 +200,8 @@
<array/> <array/>
<key>PerspectiveWidths</key> <key>PerspectiveWidths</key>
<array> <array>
<integer>1280</integer> <integer>1278</integer>
<integer>1280</integer> <integer>1278</integer>
</array> </array>
<key>Perspectives</key> <key>Perspectives</key>
<array> <array>
@ -284,13 +284,14 @@
<key>PBXSmartGroupTreeModuleOutlineStateSelectionKey</key> <key>PBXSmartGroupTreeModuleOutlineStateSelectionKey</key>
<array> <array>
<array> <array>
<integer>62</integer> <integer>29</integer>
<integer>27</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, 603}, {264, 660}}</string> <string>{{0, 422}, {264, 660}}</string>
</dict> </dict>
<key>PBXTopSmartGroupGIDs</key> <key>PBXTopSmartGroupGIDs</key>
<array/> <array/>
@ -325,7 +326,7 @@
<key>PBXProjectModuleGUID</key> <key>PBXProjectModuleGUID</key>
<string>6B8632A30F78115100E2684A</string> <string>6B8632A30F78115100E2684A</string>
<key>PBXProjectModuleLabel</key> <key>PBXProjectModuleLabel</key>
<string>CrowdManager.cpp</string> <string>imguiRenderGL.cpp</string>
<key>PBXSplitModuleInNavigatorKey</key> <key>PBXSplitModuleInNavigatorKey</key>
<dict> <dict>
<key>Split0</key> <key>Split0</key>
@ -333,11 +334,11 @@
<key>PBXProjectModuleGUID</key> <key>PBXProjectModuleGUID</key>
<string>6B8632A40F78115100E2684A</string> <string>6B8632A40F78115100E2684A</string>
<key>PBXProjectModuleLabel</key> <key>PBXProjectModuleLabel</key>
<string>CrowdManager.cpp</string> <string>imguiRenderGL.cpp</string>
<key>_historyCapacity</key> <key>_historyCapacity</key>
<integer>0</integer> <integer>0</integer>
<key>bookmark</key> <key>bookmark</key>
<string>6BA8D0F81256159A00272A3B</string> <string>6BB2EE2A1261C92300E350F8</string>
<key>history</key> <key>history</key>
<array> <array>
<string>6BBB4AA5115B4F3400CF791D</string> <string>6BBB4AA5115B4F3400CF791D</string>
@ -350,8 +351,6 @@
<string>6B4214D911803923006C347B</string> <string>6B4214D911803923006C347B</string>
<string>6B98462E11E6141900FA177B</string> <string>6B98462E11E6141900FA177B</string>
<string>6B98473011E737D800FA177B</string> <string>6B98473011E737D800FA177B</string>
<string>6BAF3E781212869F008CFCDF</string>
<string>6BAF404F12140B4E008CFCDF</string>
<string>6BAF4321121AF998008CFCDF</string> <string>6BAF4321121AF998008CFCDF</string>
<string>6BAF4421121C25E3008CFCDF</string> <string>6BAF4421121C25E3008CFCDF</string>
<string>6BAF4525121D1723008CFCDF</string> <string>6BAF4525121D1723008CFCDF</string>
@ -385,27 +384,21 @@
<string>6B8477E1122D2B9100ADF63D</string> <string>6B8477E1122D2B9100ADF63D</string>
<string>6B8477EE122D2CC900ADF63D</string> <string>6B8477EE122D2CC900ADF63D</string>
<string>6B8477FC122D2E2A00ADF63D</string> <string>6B8477FC122D2E2A00ADF63D</string>
<string>6B8477FD122D2E2A00ADF63D</string>
<string>6B8477FE122D2E2A00ADF63D</string> <string>6B8477FE122D2E2A00ADF63D</string>
<string>6B8477FF122D2E2A00ADF63D</string> <string>6B8477FF122D2E2A00ADF63D</string>
<string>6BD667FF123D2D230021A7A4</string> <string>6BD667FF123D2D230021A7A4</string>
<string>6BD6681812434B790021A7A4</string> <string>6BD6681812434B790021A7A4</string>
<string>6BD6684E124350B80021A7A4</string>
<string>6BD66855124350F80021A7A4</string> <string>6BD66855124350F80021A7A4</string>
<string>6BD6685F124351D70021A7A4</string> <string>6BD6685F124351D70021A7A4</string>
<string>6BD6686E124356CE0021A7A4</string>
<string>6BD668A3124361EB0021A7A4</string> <string>6BD668A3124361EB0021A7A4</string>
<string>6BD6691112436CEC0021A7A4</string> <string>6BD6691112436CEC0021A7A4</string>
<string>6BD6691212436CEC0021A7A4</string> <string>6BD6691212436CEC0021A7A4</string>
<string>6BD66930124374D60021A7A4</string> <string>6BD66930124374D60021A7A4</string>
<string>6BD66934124375DF0021A7A4</string>
<string>6BD66937124376780021A7A4</string> <string>6BD66937124376780021A7A4</string>
<string>6BD66938124376780021A7A4</string> <string>6BD66938124376780021A7A4</string>
<string>6BD669501243778E0021A7A4</string> <string>6BD669501243778E0021A7A4</string>
<string>6BD669511243778E0021A7A4</string> <string>6BD669511243778E0021A7A4</string>
<string>6BD6695C124377D40021A7A4</string> <string>6BD6695C124377D40021A7A4</string>
<string>6BD669661243806F0021A7A4</string>
<string>6BD66A131243AA4A0021A7A4</string>
<string>6BBB0361124E242E00533229</string> <string>6BBB0361124E242E00533229</string>
<string>6BBB0363124E242E00533229</string> <string>6BBB0363124E242E00533229</string>
<string>6BBB0365124E242E00533229</string> <string>6BBB0365124E242E00533229</string>
@ -426,9 +419,18 @@
<string>6BA8CF951255D97400272A3B</string> <string>6BA8CF951255D97400272A3B</string>
<string>6BA8CFA81255DC6500272A3B</string> <string>6BA8CFA81255DC6500272A3B</string>
<string>6BA8CFBE1255DE0500272A3B</string> <string>6BA8CFBE1255DE0500272A3B</string>
<string>6BA8D0EA1256148D00272A3B</string> <string>6BA8D10B125B0E8E00272A3B</string>
<string>6BA8D0F41256156500272A3B</string> <string>6BA8D10C125B0E8E00272A3B</string>
<string>6BA8D0F51256156500272A3B</string> <string>6BA8D10D125B0E8E00272A3B</string>
<string>6BB2EDF61261C75400E350F8</string>
<string>6BB2EDF91261C75400E350F8</string>
<string>6BB2EE231261C92300E350F8</string>
<string>6BB2EE241261C92300E350F8</string>
<string>6BB2EE251261C92300E350F8</string>
<string>6BB2EE261261C92300E350F8</string>
<string>6BB2EE271261C92300E350F8</string>
<string>6BB2EE281261C92300E350F8</string>
<string>6BB2EE291261C92300E350F8</string>
</array> </array>
</dict> </dict>
<key>SplitCount</key> <key>SplitCount</key>
@ -442,18 +444,18 @@
<key>GeometryConfiguration</key> <key>GeometryConfiguration</key>
<dict> <dict>
<key>Frame</key> <key>Frame</key>
<string>{{0, 0}, {992, 538}}</string> <string>{{0, 0}, {992, 379}}</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>538pt</string> <string>379pt</string>
</dict> </dict>
<dict> <dict>
<key>Proportion</key> <key>Proportion</key>
<string>135pt</string> <string>294pt</string>
<key>Tabs</key> <key>Tabs</key>
<array> <array>
<dict> <dict>
@ -467,7 +469,7 @@
<key>GeometryConfiguration</key> <key>GeometryConfiguration</key>
<dict> <dict>
<key>Frame</key> <key>Frame</key>
<string>{{10, 27}, {994, 53}}</string> <string>{{10, 27}, {992, 107}}</string>
</dict> </dict>
<key>Module</key> <key>Module</key>
<string>XCDetailModule</string> <string>XCDetailModule</string>
@ -483,7 +485,9 @@
<key>GeometryConfiguration</key> <key>GeometryConfiguration</key>
<dict> <dict>
<key>Frame</key> <key>Frame</key>
<string>{{10, 27}, {992, 49}}</string> <string>{{10, 27}, {992, 267}}</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>
@ -521,9 +525,7 @@
<key>GeometryConfiguration</key> <key>GeometryConfiguration</key>
<dict> <dict>
<key>Frame</key> <key>Frame</key>
<string>{{10, 27}, {992, 108}}</string> <string>{{10, 27}, {992, 99}}</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>
@ -551,11 +553,11 @@
</array> </array>
<key>TableOfContents</key> <key>TableOfContents</key>
<array> <array>
<string>6BA8CEC41255BCE600272A3B</string> <string>6BB2EDED1261C59300E350F8</string>
<string>1CA23ED40692098700951B8B</string> <string>1CA23ED40692098700951B8B</string>
<string>6BA8CEC51255BCE600272A3B</string> <string>6BB2EDEE1261C59300E350F8</string>
<string>6B8632A30F78115100E2684A</string> <string>6B8632A30F78115100E2684A</string>
<string>6BA8CEC61255BCE600272A3B</string> <string>6BB2EDEF1261C59300E350F8</string>
<string>1CA23EDF0692099D00951B8B</string> <string>1CA23EDF0692099D00951B8B</string>
<string>1CA23EE00692099D00951B8B</string> <string>1CA23EE00692099D00951B8B</string>
<string>1CA23EE10692099D00951B8B</string> <string>1CA23EE10692099D00951B8B</string>
@ -605,12 +607,12 @@
<key>GeometryConfiguration</key> <key>GeometryConfiguration</key>
<dict> <dict>
<key>Frame</key> <key>Frame</key>
<string>{{0, 0}, {1280, 254}}</string> <string>{{0, 0}, {1278, 276}}</string>
</dict> </dict>
<key>Module</key> <key>Module</key>
<string>PBXDebugCLIModule</string> <string>PBXDebugCLIModule</string>
<key>Proportion</key> <key>Proportion</key>
<string>254pt</string> <string>276pt</string>
</dict> </dict>
<dict> <dict>
<key>ContentConfiguration</key> <key>ContentConfiguration</key>
@ -629,8 +631,8 @@
<string>yes</string> <string>yes</string>
<key>sizes</key> <key>sizes</key>
<array> <array>
<string>{{0, 0}, {579, 129}}</string> <string>{{0, 0}, {578, 140}}</string>
<string>{{579, 0}, {701, 129}}</string> <string>{{578, 0}, {700, 140}}</string>
</array> </array>
</dict> </dict>
<key>VerticalSplitView</key> <key>VerticalSplitView</key>
@ -645,8 +647,8 @@
<string>yes</string> <string>yes</string>
<key>sizes</key> <key>sizes</key>
<array> <array>
<string>{{0, 0}, {1280, 129}}</string> <string>{{0, 0}, {1278, 140}}</string>
<string>{{0, 129}, {1280, 237}}</string> <string>{{0, 140}, {1278, 257}}</string>
</array> </array>
</dict> </dict>
</dict> </dict>
@ -666,7 +668,7 @@
<key>DebugSTDIOWindowFrame</key> <key>DebugSTDIOWindowFrame</key>
<string>{{200, 200}, {500, 300}}</string> <string>{{200, 200}, {500, 300}}</string>
<key>Frame</key> <key>Frame</key>
<string>{{0, 259}, {1280, 366}}</string> <string>{{0, 281}, {1278, 397}}</string>
<key>PBXDebugSessionStackFrameViewKey</key> <key>PBXDebugSessionStackFrameViewKey</key>
<dict> <dict>
<key>DebugVariablesTableConfiguration</key> <key>DebugVariablesTableConfiguration</key>
@ -676,16 +678,16 @@
<string>Value</string> <string>Value</string>
<real>168</real> <real>168</real>
<string>Summary</string> <string>Summary</string>
<real>325</real> <real>324</real>
</array> </array>
<key>Frame</key> <key>Frame</key>
<string>{{579, 0}, {701, 129}}</string> <string>{{578, 0}, {700, 140}}</string>
</dict> </dict>
</dict> </dict>
<key>Module</key> <key>Module</key>
<string>PBXDebugSessionModule</string> <string>PBXDebugSessionModule</string>
<key>Proportion</key> <key>Proportion</key>
<string>366pt</string> <string>397pt</string>
</dict> </dict>
</array> </array>
<key>Name</key> <key>Name</key>
@ -703,14 +705,14 @@
</array> </array>
<key>TableOfContents</key> <key>TableOfContents</key>
<array> <array>
<string>6BA8CF151255CC4F00272A3B</string> <string>6BB2EDFF1261C75A00E350F8</string>
<string>1CCC7628064C1048000F2A68</string> <string>1CCC7628064C1048000F2A68</string>
<string>1CCC7629064C1048000F2A68</string> <string>1CCC7629064C1048000F2A68</string>
<string>6BA8CF161255CC4F00272A3B</string> <string>6BB2EE001261C75A00E350F8</string>
<string>6BA8CF171255CC4F00272A3B</string> <string>6BB2EE011261C75A00E350F8</string>
<string>6BA8CF181255CC4F00272A3B</string> <string>6BB2EE021261C75A00E350F8</string>
<string>6BA8CF191255CC4F00272A3B</string> <string>6BB2EE031261C75A00E350F8</string>
<string>6BA8CF1A1255CC4F00272A3B</string> <string>6B8632A30F78115100E2684A</string>
</array> </array>
<key>ToolbarConfigUserDefaultsMinorVersion</key> <key>ToolbarConfigUserDefaultsMinorVersion</key>
<string>2</string> <string>2</string>
@ -742,8 +744,8 @@
<integer>5</integer> <integer>5</integer>
<key>WindowOrderList</key> <key>WindowOrderList</key>
<array> <array>
<string>6BA8CF1C1255CC4F00272A3B</string> <string>6BB2EE041261C75A00E350F8</string>
<string>6BA8CF1D1255CC4F00272A3B</string> <string>6BB2EE051261C75A00E350F8</string>
<string>/Users/memon/Code/recastnavigation/RecastDemo/Build/Xcode/Recast.xcodeproj</string> <string>/Users/memon/Code/recastnavigation/RecastDemo/Build/Xcode/Recast.xcodeproj</string>
</array> </array>
<key>WindowString</key> <key>WindowString</key>

View File

@ -166,6 +166,13 @@ public:
inline const float* getLocalSegment(int i) const { return &m_localSegs[i*6]; } inline const float* getLocalSegment(int i) const { return &m_localSegs[i*6]; }
}; };
static const int MAX_NEIGHBOURS = 6;
struct Neighbour
{
int idx;
float dist;
};
struct Agent struct Agent
{ {
@ -179,6 +186,9 @@ struct Agent
float t; float t;
float var; float var;
Neighbour neis[MAX_NEIGHBOURS];
int nneis;
float radius, height; float radius, height;
float npos[3]; float npos[3];
float disp[3]; float disp[3];
@ -239,7 +249,7 @@ class CrowdManager
int m_moveRequestCount; int m_moveRequestCount;
int getNeighbours(const float* pos, const float height, const float range, int getNeighbours(const float* pos, const float height, const float range,
const Agent* skip, Agent** result, const int maxResult); const Agent* skip, Neighbour* result, const int maxResult);
public: public:
CrowdManager(); CrowdManager();
@ -253,7 +263,7 @@ public:
bool requestMoveTarget(const int idx, dtPolyRef ref, const float* pos); bool requestMoveTarget(const int idx, dtPolyRef ref, const float* pos);
int getActiveAgents(Agent** agents, const int maxAgents); int getActiveAgents(Agent** agents, const int maxAgents);
void updateMoveRequest(const float dt, dtNavMeshQuery* navquery);
void update(const float dt, unsigned int flags, dtNavMeshQuery* navquery); void update(const float dt, unsigned int flags, dtNavMeshQuery* navquery);
const dtQueryFilter* getFilter() const { return &m_filter; } const dtQueryFilter* getFilter() const { return &m_filter; }