{"id":13533980,"url":"https://github.com/ikpil/DotRecast","last_synced_at":"2025-04-01T22:31:07.506Z","repository":{"id":155149302,"uuid":"613697580","full_name":"ikpil/DotRecast","owner":"ikpil","description":"DotRecast - a port of Recast \u0026 Detour, Industry-standard navigation mesh toolset for .NET, C#, Unity3D, games, servers","archived":false,"fork":false,"pushed_at":"2025-03-22T11:43:06.000Z","size":11758,"stargazers_count":648,"open_issues_count":18,"forks_count":82,"subscribers_count":13,"default_branch":"main","last_synced_at":"2025-03-30T06:01:34.226Z","etag":null,"topics":["ai","crowd-simulation","csharp","detour","game","game-development","gamedev","navigation","navmesh","pathfinder","pathfinding","recast","recastnavigation","server","unity","unity3d"],"latest_commit_sha":null,"homepage":"","language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"zlib","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ikpil.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"github":"ikpil"}},"created_at":"2023-03-14T04:52:32.000Z","updated_at":"2025-03-28T04:12:50.000Z","dependencies_parsed_at":"2023-10-22T04:24:38.533Z","dependency_job_id":"54fc38b5-9cf6-44f4-a260-17af69e68dd2","html_url":"https://github.com/ikpil/DotRecast","commit_stats":null,"previous_names":[],"tags_count":13,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ikpil%2FDotRecast","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ikpil%2FDotRecast/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ikpil%2FDotRecast/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ikpil%2FDotRecast/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ikpil","download_url":"https://codeload.github.com/ikpil/DotRecast/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246720472,"owners_count":20822911,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ai","crowd-simulation","csharp","detour","game","game-development","gamedev","navigation","navmesh","pathfinder","pathfinding","recast","recastnavigation","server","unity","unity3d"],"created_at":"2024-08-01T07:01:24.993Z","updated_at":"2025-04-01T22:31:06.130Z","avatar_url":"https://github.com/ikpil.png","language":"C#","readme":"# DotRecast\n\n*DotRecast is C# Recast \u0026 Detour, a port of [recastnavigation](https://github.com/recastnavigation/recastnavigation) and [recast4j](https://github.com/ppiastucki/recast4j) to the C# language.*  \n*If you'd like to support the project, we'd appreciate starring(⭐) our repos on Github for more visibility.*\n\n---\n\n![GitHub License](https://img.shields.io/github/license/ikpil/DotRecast?style=for-the-badge)\n![Languages](https://img.shields.io/github/languages/top/ikpil/DotRecast?style=for-the-badge)\n![GitHub repo size](https://img.shields.io/github/repo-size/ikpil/DotRecast?style=for-the-badge)\n[![GitHub Repo stars](https://img.shields.io/github/stars/ikpil/DotRecast?style=for-the-badge\u0026logo=github)](https://github.com/ikpil/DotRecast)\n[![GitHub Actions Workflow Status](https://img.shields.io/github/actions/workflow/status/ikpil/DotRecast/dotnet.yml?style=for-the-badge\u0026logo=github)](https://github.com/ikpil/DotRecast/actions/workflows/dotnet.yml)\n[![GitHub Actions Workflow Status](https://img.shields.io/github/actions/workflow/status/ikpil/DotRecast/codeql.yml?style=for-the-badge\u0026logo=github\u0026label=CODEQL)](https://github.com/ikpil/DotRecast/actions/workflows/codeql.yml)\n[![GitHub commit activity](https://img.shields.io/github/commit-activity/m/ikpil/DotRecast?style=for-the-badge\u0026logo=github)](https://github.com/ikpil/DotRecast/commits)\n[![GitHub issues](https://img.shields.io/github/issues-raw/ikpil/DotRecast?style=for-the-badge\u0026logo=github\u0026color=44cc11)](https://github.com/ikpil/DotRecast/issues)\n[![GitHub closed issues](https://img.shields.io/github/issues-closed-raw/ikpil/DotRecast?style=for-the-badge\u0026logo=github\u0026color=a371f7)](https://github.com/ikpil/DotRecast/issues)\n[![NuGet Version](https://img.shields.io/nuget/vpre/DotRecast.Core?style=for-the-badge\u0026logo=nuget)](https://www.nuget.org/packages/DotRecast.Core)\n[![NuGet Downloads](https://img.shields.io/nuget/dt/DotRecast.Core?style=for-the-badge\u0026logo=nuget)](https://www.nuget.org/packages/DotRecast.Core)\n[![GitHub Sponsors](https://img.shields.io/github/sponsors/ikpil?style=for-the-badge\u0026logo=GitHub-Sponsors\u0026link=https%3A%2F%2Fgithub.com%2Fsponsors%2Fikpil)](https://github.com/sponsors/ikpil)\n\n---\n\n[![demo](https://user-images.githubusercontent.com/313821/266750582-8cf67832-1206-4b58-8c1f-7205210cbf22.gif)](https://youtu.be/zIFIgziKLhQ)\n\n\n\n## 🚀 Features\n \n- 🤖 Automatic - Recast can generate a navmesh from any level geometry you throw at it\n- 🏎️ Fast - swift turnaround times for level designers\n- 🧘 Flexible - detailed customization options and modular design let you tailor functionality to your specific needs\n- 🚫 Dependency-Free - building Recast \u0026 Detour only requires a .NET compiler\n- 💪 Industry Standard - Recast powers AI navigation features in Unity, Unreal, Godot, O3DE and countless AAA and indie games and engines\n\nRecast Navigation is divided into multiple modules, each contained in its own folder:\n\n- [DotRecast.Core](https://github.com/ikpil/DotRecast/tree/main/src/DotRecast.Core) : Core utils\n- [DotRecast.Recast](https://github.com/ikpil/DotRecast/tree/main/src/DotRecast.Recast) : Navmesh generation\n- [DotRecast.Detour](https://github.com/ikpil/DotRecast/tree/main/src/DotRecast.Detour) : Runtime loading of navmesh data, pathfinding, navmesh queries\n- [DotRecast.Detour.TileCache](https://github.com/ikpil/DotRecast/tree/main/src/DotRecast.Detour.TileCache) : Navmesh streaming. Useful for large levels and open-world games\n- [DotRecast.Detour.Crowd](https://github.com/ikpil/DotRecast/tree/main/src/DotRecast.Detour.Crowd) : Agent movement, collision avoidance, and crowd simulation\n- [DotRecast.Detour.Dynamic](https://github.com/ikpil/DotRecast/tree/main/src/DotRecast.Detour.Dynamic) : robust support for dynamic nav meshes combining pre-built voxels with dynamic objects which can be freely added and removed\n- [DotRecast.Detour.Extras](https://github.com/ikpil/DotRecast/tree/main/src/DotRecast.Detour.Extras) : simple tool to import navmeshes created with [A* Pathfinding Project](https://arongranberg.com/astar/)\n- [DotRecast.Recast.Toolset](https://github.com/ikpil/DotRecast/tree/main/src/DotRecast.Recast.Toolset) : all modules\n- [DotRecast.Recast.Demo](https://github.com/ikpil/DotRecast/tree/main/src/DotRecast.Recast.Demo) : Standalone, comprehensive demo app showcasing all aspects of Recast \u0026 Detour's functionality\n- [Tests](https://github.com/ikpil/DotRecast/tree/main/test) : Unit tests\n\n## ⚡ Getting Started\n \n- To build or integrate into your own project, please check out [BuildingAndIntegrating.md](https://github.com/ikpil/DotRecast/tree/main/BuildingAndIntegrating.md)\n- To create a NavMesh, please check out [RecastSoloMeshTest.cs](https://github.com/ikpil/DotRecast/tree/main/test/DotRecast.Recast.Test/RecastSoloMeshTest.cs)\n- To test pathfinding, please check out [FindPathTest.cs](https://github.com/ikpil/DotRecast/tree/main/test/DotRecast.Detour.Test/FindPathTest.cs)\n- To watch the demo play video, please check out [Demo Video](#-demo-video)\n\n## ⚙ How it Works\n\nRecast constructs a navmesh through a multi-step mesh rasterization process.\n\n1. First Recast rasterizes the input triangle meshes into voxels.\n2. Voxels in areas where agents would not be able to move are filtered and removed.\n3. The walkable areas described by the voxel grid are then divided into sets of polygonal regions.\n4. The navigation polygons are generated by re-triangulating the generated polygonal regions into a navmesh.\n\nYou can use Recast to build a single navmesh, or a tiled navmesh.\nSingle meshes are suitable for many simple, static cases and are easy to work with.\nTiled 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.\n\n## 📚 Documentation \u0026 Links\n\n- DotRecast Links\n  - [DotRecast/issues](https://github.com/ikpil/DotRecast/issues)\n \n- Official Links\n  - [recastnavigation/discussions](https://github.com/recastnavigation/recastnavigation/discussions)\n  - [recastnav.com](https://recastnav.com)\n\n## 🅾 License\n\nDotRecast is licensed under ZLib license, see [LICENSE.txt](https://github.com/ikpil/DotRecast/tree/main/LICENSE.txt) for more information.\n\n## 📹 Demo Video\n\n[![demo](https://img.youtube.com/vi/zIFIgziKLhQ/0.jpg)](https://youtu.be/zIFIgziKLhQ)\n\n[![demo](https://img.youtube.com/vi/CPvc19gNUEk/0.jpg)](https://youtu.be/CPvc19gNUEk)\n\n[![demo](https://img.youtube.com/vi/pe5jpGUNPRg/0.jpg)](https://youtu.be/pe5jpGUNPRg)\n\n","funding_links":["https://github.com/sponsors/ikpil"],"categories":["Code","GamePlay","Libraries","Open Source Repositories","Game","💻 Programming","Open Source Packages"],"sub_categories":["Engines and Frameworks","HUD","C#","AI","Code"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fikpil%2FDotRecast","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fikpil%2FDotRecast","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fikpil%2FDotRecast/lists"}