Industry-standard navigation-mesh toolset for games
Recast Navigation is divided into multiple modules, each contained in its own folder:
Recast/
- Navmesh generationDetour/
- Runtime loading of navmesh data, pathfinding, navmesh queriesDetourTileCache/
- Navmesh streaming. Useful for large levels and open-world gamesDetourCrowd/
- Agent movement, collision avoidance, and crowd simulationDebugUtils/
- API for drawing debug visualizations of navigation data and behaviorTests/
- Unit testsRecastDemo/
- Standalone, comprehensive demo app showcasing all aspects of Recast & Detourβs functionalityCheck out BuildingAndIntegrating.md for information on how to build the comprehensive RecastDemo project, as well as guidance on integrating Recast & Detour into your own project.
If you are new to Recast & Detour, check out Sample_SoloMesh.cpp in RecastDemo to get started with building navmeshes and NavMeshTesterTool.cpp for building paths with Detour.
Recast constructs a navmesh through a multi-step mesh rasterization process.
You can use Recast to build a single navmesh, or a tiled navmesh.
Single meshes are suitable for many simple, static cases and are easy to work with.
Tiled navmeshes are more complex to work with but better support larger, more dynamic environments. Tiled meshes enable advance Detour features like re-baking, heirarchical path-planning, and navmesh data-streaming.
Official documentation is available at recastnav.com
Docs are generated via Doxygen from source file comments and from markdown files in the Docs/
directory.
Ask questions, voice ideas, or request new features over on Github Discussions or on our old Google Group list.
Check out the Development Roadmap to see what features and functionality you might be able to help with, and the Contribution Guidelines for information on how to make contributions.
Our Code of Conduct applies to all Recast Navigation community channels.
Recast & Detour is licensed under the ZLib license. See License.txt for more.