ARecastNavMesh::GetPolysWithinPathingDistance() Incorrect discription or implementation

/** Retrieves all polys within given pathing distance from StartLocation.
* @NOTE query is not using string-pulled path distance (for performance reasons),
* it measured distance between middles of portal edges, do you might want to
* add an extra margin to PathingDistance */

    bool GetPolysWithinPathingDistance(FVector StartLoc, float PathingDistance ...);

This uses your modified dtNavMeshQuery::findPolysAroundCircle() which works exactly how its supposed to.

findPolysAroundCircle() doesn’t return polys within the pathing distance but rather returns polys that are navigable from within the circles radius (better visual description in the video below).

Here’s a video flood filling the navmesh by increasing the PathingDistance over time and drawing the returned polys. The first half of the video (cyan) shows the current implementation. The second half (purple) is my hacky implementation of what I believe the description wants this function to do.

Maybe I’m just interpreting this function wrong and everything is working as intended.

Thanks for reporting this bug. Looking at that function I can confirm, that we compare current path distance with squared threshold, which ends up accepting polys that are way too far - altough I’d need to check it in action to see it that’s the only problem.

Btw, best repro video I’ve seen around here! :slight_smile: