Navigation mesh for Bevy using Polyanya.
Check out the WASM demos
Loading a mesh from a gLTF file, then building a NavMesh
from it and using it for getting paths. See gltf.rs and NavMesh::from_bevy_mesh
.
Spawn entities marked as obstacles, create the NavMesh live from them. See auto_navmesh_aabb and NavMeshUpdaterPlugin
.
Parameters for NavMesh generation
Pathfinding:
- Compromise-free Pathfinding on a Navigation Mesh: Fast and optimal path finding on a generalized navmesh
NavMesh building:
- Line Generalisation by Repeated Elimination of Points: Geometry simplification while keeping the general shape
- Constrained Delaunay Triangulation: Building a tri-mesh from edges
- Steering Behaviors For Autonomous Characters https://www.red3d.com/cwr/steer/
- A Generic Solution to Polygon Clipping https://dl.acm.org/doi/pdf/10.1145/129902.129906
- Polygon Offsetting by Computing Winding Numbers https://mcmains.me.berkeley.edu/pubs/DAC05OffsetPolygon.pdf
Bevy | vleue_navigator | avian |
---|---|---|
0.15 | 0.11 | avian#e23d070e |
0.14 | 0.10 | 0.1 |
0.13 | 0.7 | x |