{"id":13662585,"url":"https://github.com/idbrii/unity-navgen","last_synced_at":"2025-09-25T02:31:44.833Z","repository":{"id":48463687,"uuid":"304854773","full_name":"idbrii/unity-navgen","owner":"idbrii","description":"Tools for working with Unity's NavMeshComponents and generating navmesh: link generation, mesh cleanup, etc","archived":false,"fork":false,"pushed_at":"2021-07-06T23:22:00.000Z","size":301,"stargazers_count":56,"open_issues_count":1,"forks_count":16,"subscribers_count":6,"default_branch":"main","last_synced_at":"2024-11-10T18:44:00.114Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/idbrii.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2020-10-17T10:41:50.000Z","updated_at":"2024-11-03T14:53:23.000Z","dependencies_parsed_at":"2022-08-29T22:22:40.801Z","dependency_job_id":null,"html_url":"https://github.com/idbrii/unity-navgen","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/idbrii%2Funity-navgen","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/idbrii%2Funity-navgen/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/idbrii%2Funity-navgen/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/idbrii%2Funity-navgen/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/idbrii","download_url":"https://codeload.github.com/idbrii/unity-navgen/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":234147879,"owners_count":18786934,"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":[],"created_at":"2024-08-02T05:02:02.748Z","updated_at":"2025-09-25T02:31:39.569Z","avatar_url":"https://github.com/idbrii.png","language":"C#","readme":"# unity-navgen\nTools for working with [Unity's\nNavMeshComponents](https://github.com/Unity-Technologies/NavMeshComponents) and\ngenerating navmesh: link generation, mesh cleanup, etc\n\n\nDefault NavMesh Generation                                                                                                                         | Using NavLinkGenerator's Bake Links and Interior Volumes\n:-------------------------:                                                                                                                        | :-------------------------:\n![Default navmesh generation](https://user-images.githubusercontent.com/43559/96373807-b0a40980-1123-11eb-8bec-a5921c9819f7.png)                   | ![Hiding cube platform to show navmesh island inside](https://user-images.githubusercontent.com/43559/96373809-b13ca000-1123-11eb-9431-e30834db4af1.png)\n![After running Bake Links in NavLinkGenerator](https://user-images.githubusercontent.com/43559/96373808-b13ca000-1123-11eb-9e11-d1b2cb41cfba.png) | ![Hiding cube platform to show there's no navmesh island inside](https://user-images.githubusercontent.com/43559/96373810-b1d53680-1123-11eb-94e3-2c61b481973b.png)\n\n## NavLinkGenerator\n\nNavLinkGenerator is an asset for generating\n[NavMeshLinks](https://docs.unity3d.com/Manual/class-NavMeshLink.html) across\ngaps in your navmesh. It also serves as the central hub for navgen.\n\n![NavLinkGenerator](https://user-images.githubusercontent.com/43559/96361844-081f8680-10de-11eb-86ea-23157153d05e.png)\n\nNavLinkGenerator is a ScriptableObject -- so you need to create one to start\nusing it (Assets \u003e Create \u003e Navigation \u003e NavLinkGenerator). The asset contains\nsettings and buttons for generating links.\n\n\n# NavNonWalkableCollection\n\nThe \"Create Interior Volumes\" button in NavLinkGenerator creates a\nNavNonWalkableCollection which tracks the volumes so they can be rebuilt.\nRemove a volume from this component's list to prevent it from being modified.\n\n\n# NavMeshAreas\n\nYou can assign enum values from `UnityEngine.AI.NavMeshAreas` to NavMeshAgent's\nAreaMask and `UnityEngine.AI.NavMeshAreaIndex` to area indexes in\nNavMeshSurface, NavMeshLink, NavMeshModifierVolume, etc. These enums are\nautomatically updated from the areas defined in Navigation (Window \u003e AI \u003e\nNavigation).\n\n[NavMeshAreas generates two enums\n](https://github.com/idbrii/unity-navgen/blob/16d4ba6c16228d7f7b9fe7a91ff8b8a837ba842c/Runtime/NavMeshAreas/NavMeshAreas.cs#L19-L32)\nthat look something like this:\n\n```cs\n// NavMeshAgent uses AreaMask.\n[Flags]\npublic enum NavMeshAreas\n{\n    None = 0,\n    Walkable = 1, NotWalkable = 2, Jump = 4, Climb = 8, Blocked = 16, Hole = 32, Edge = 64, Fall = 128, New1 = 256, Stuff = 512, \n    All = ~0,\n}\n\n// NavMeshSurface, NavMeshLink, NavMeshModifierVolume, etc. use indexes.\npublic enum NavMeshAreaIndex\n{\n    Walkable = 0, NotWalkable = 1, Jump = 2, Climb = 3, Blocked = 4, Hole = 5, Edge = 6, Fall = 7, New1 = 8, Stuff = 9, \n}\n```\n\n\n# Example\nSee the [example branch](https://github.com/idbrii/unity-navgen/tree/example) for a demonstration project.\n\n\n# Installation\n\n1. Install Unity [NavMeshComponents](https://github.com/Unity-Technologies/NavMeshComponents.git) from github.\n2. Copy the code to your project or add a dependency to your manifest.json to install as a package:\n\n    \"com.github.idbrii.unity-navgen\": \"https://github.com/idbrii/unity-navgen.git#latest-release\",\n\n\n# Alternatives\n\n* [NavMeshLinks_AutoPlacer by eDmitriy](https://forum.unity.com/threads/navmesh-links-generator-for-navmeshcomponents.515143/)\n* [Navmesh Cleaner](https://assetstore.unity.com/packages/tools/ai/navmesh-cleaner-151501) ([see here](http://answers.unity.com/answers/1781054/view.html) to use with NavMeshComponents)\n\n# Credits\n\nThis project includes [UnityNavMeshAreas](https://github.com/jeffvella/UnityNavMeshAreas) Copyright (c) 2018 jeffvella.\n","funding_links":[],"categories":["C\\#","Open Source Repositories"],"sub_categories":["AI"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fidbrii%2Funity-navgen","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fidbrii%2Funity-navgen","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fidbrii%2Funity-navgen/lists"}