Original Post
Hey there, This is a followup to the post here. I've recently integrated navigation meshes into my code base, and have written my pathfinding. It uses midpoint edge-to-edge cost, and then passes the resulting channels/tunnels to the funnel algorithm, to generate the straight paths. All of this works, except that sometimes, due to the size of polygons, the correct choice is not made on pathfinding. The post I linked to talks about using the funnel algorithm during the path finding itself to generate better choices. While I conceptually understand this, I don't really know how to implement it. Right now, when the best node is taken off the open list, all of it's neighbours are added to the open list, with their total cost being the sum of the current node's cost, and the distance from the previous edge's midpoint to this edge's midpoints. Where do I put this funnel operation in here? My assumption has always been that current best-nodes children can never have a better 'total cost' than their parent, but it's entirely possible that this is the case when calculating cost as a funnel-calculation from the start of the path to the current node being evaluated. Can anyone shed some light on this? S>