vleue_navigator
Pathfinding on NavMeshes for Bevy
Rust★ 480⑂ 56 forksApache-2.0updated 4 months ago
README.mdfork it — it’s yours
Navigation for Bevy with NavMesh
Navigation mesh for Bevy using Polyanya.
Check out the WASM demos
Usage
From a prebuilt NavMesh
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.
From obstacle components
Spawn entities marked as obstacles, create the NavMesh live from them. See auto_navmesh_aabb and NavMeshUpdaterPlugin.
Example videos
Parameters for NavMesh generation
Reading list
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
- Polygon Offsetting by Computing Winding Numbers: Agent radius
To Implement
- Steering Behaviors For Autonomous Characters https://www.red3d.com/cwr/steer/
Bevy Supported Versions
| Bevy | vleue_navigator | avian |
|---|---|---|
| 0.18 | 0.15 | 0.5 |
| 0.17 | 0.14 | 0.4 |
| 0.16 | 0.13 | 0.3 |
| 0.15 | 0.11.1 | 0.2 |
| 0.14 | 0.10 | 0.1 |
| 0.13 | 0.7 | x |
more like this
TachiSnap
TachiSnap — Pixel Snapper for animation pixel artists. Rust + WebAssembly client-side tool for cleaning up AI-generated…
HTML★ 50
bit_gossip
Pathfinding library for calculating all node pairs' shortest paths in an unweighted undirected graph.
Rust★ 50
