MengeCrowdSim / Menge

The source code for the Menge crowd simulation framework
Apache License 2.0
139 stars 64 forks source link

Agent placement on multi-level navigation mesh #7

Closed curds01 closed 7 years ago

curds01 commented 7 years ago

There is no facility for placing agents on arbitrary levels of a navigation mesh. For example, if a two-story building were modeled with a navigation mesh, placement onto the mesh at position (x,y) would project the point down from an infinite height and stop at the first polygon encountered. Thus, if two polygons project to the same (x, y) point, an agent will only be initialized on the upper polygon.

curds01 commented 7 years ago

We need to have an "explicit navigation mesh" agent generator.

Navigation meshes support named regions. In this case, if the explicit navigation mesh generator takes as arguments: a navigation mesh and a region name, the x-y position can be interpreted directly as that region name as a target.

There has to be a well-defined behavior if the x-y position does not project onto the named region either:

curds01 commented 7 years ago

Solved by PR #9