stevefsp / critterai

Archive of CAINav Project (Inactive)
MIT License
127 stars 75 forks source link

Navmesh.GetNearestPoly() Returns Invalid Results for Large Search Extents #17

Open GoogleCodeExporter opened 9 years ago

GoogleCodeExporter commented 9 years ago
The wrong location on the navmesh will be returned if a large search extent is 
used with Navmesh.GetNearestPoly().

The exact point at which failures begin is not known.  But testing up to (60, 
60, 60) did not have any problems.  Extents over (75, 75, 75) were definitely 
returning bad results.

The work around is to decrease the size of the search extents.

Original issue reported on code.google.com by steve...@gmail.com on 30 Jul 2011 at 12:59

GoogleCodeExporter commented 9 years ago
This is an issue with the behavior of Detour.  It can't be resolved by changes 
to CAINav.  Opened 
http://code.google.com/p/recastnavigation/issues/detail?id=180 to determine 
resolution.  In the mean time the next release will include a warning about the 
behavior.

Specific limitation:  If the extents overlaps more than 128 polygons in the 
navigation mesh, the result result may be wrong.

The issue is not that large search extents should be supported.  They probably 
shouldn't be.  Rather the issue is that the failure is silent.

Original comment by steve...@gmail.com on 6 Sep 2011 at 4:47

GoogleCodeExporter commented 9 years ago
Placed on long term hold since full resolution depend on changes to Recast 
Navigation.

Original comment by steve...@gmail.com on 24 Sep 2011 at 4:09