YiMingFu / recastnavigation

Automatically exported from code.google.com/p/recastnavigation
zlib License
0 stars 0 forks source link

DetourCrowd deadlocks around corners #171

Open GoogleCodeExporter opened 8 years ago

GoogleCodeExporter commented 8 years ago
DetourCrowd seems to have trouble handling agents with different targets, 
getting them into near-deadlocks rather often. An extreme example: Consider a 
wide, symmetrical L-shaped walkable area. Two agents are in the crowd; each one 
starts at one extremum of the L, and has the other extremum as a target. 
Despite my best tweaking efforts, this always seems to lead to the two agents 
getting to the corner of the L and stopping there, either forever or for an 
unrealistically long time.

A guess at a solution: If the DetourCrowd agents were given not only a current 
waypoint, but also information about the rest of the navmesh-edge that waypoint 
was on, they could mitigate the dvel-based penalty for velocity samples that 
still took them towards the edge.

Original issue reported on code.google.com by snef...@gmail.com on 31 May 2011 at 4:22

GoogleCodeExporter commented 8 years ago
I did some test with this case, and I'm able to repro it. It looks like the 
case creates a local minimum, which the velocity planning cannot cope with. I 
have a couple of ideas/hacks how to fix this, but I'm trying to think a bit 
better solution.

Original comment by memono...@gmail.com on 11 Sep 2011 at 11:24