{"id":19228009,"url":"https://github.com/kbengine/unity3d_nav_critterai","last_synced_at":"2025-08-21T12:30:47.511Z","repository":{"id":47616591,"uuid":"20795648","full_name":"kbengine/unity3d_nav_critterai","owner":"kbengine","description":"KBEngine is a MMOG engine of server.","archived":false,"fork":false,"pushed_at":"2019-03-14T09:43:20.000Z","size":15746,"stargazers_count":137,"open_issues_count":1,"forks_count":102,"subscribers_count":16,"default_branch":"master","last_synced_at":"2024-12-12T01:30:48.519Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"http://kbengine.org","language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/kbengine.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2014-06-13T07:19:57.000Z","updated_at":"2024-08-08T14:15:17.000Z","dependencies_parsed_at":"2022-08-29T23:50:17.936Z","dependency_job_id":null,"html_url":"https://github.com/kbengine/unity3d_nav_critterai","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kbengine%2Funity3d_nav_critterai","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kbengine%2Funity3d_nav_critterai/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kbengine%2Funity3d_nav_critterai/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kbengine%2Funity3d_nav_critterai/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/kbengine","download_url":"https://codeload.github.com/kbengine/unity3d_nav_critterai/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":230511479,"owners_count":18237657,"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-11-09T15:26:23.777Z","updated_at":"2024-12-19T23:14:52.933Z","avatar_url":"https://github.com/kbengine.png","language":"C#","readme":"unity3d_nav_critterai\n=============\n\n## 原名cai-nav\nKBEngine在u3d项目中的演示使用, 对导出部分做了一点修改。\n\n## 编译(Unity): (注意：unity3d-x-64bit中已经有编译好的文件， 没有做源码修改的话无需重新编译，直接使用即可)\n\t\n\t1: vs2013及以上打开sources\\build\\unity\\cai-navigation-u3d.sln\n\n\t2: 设置每个子项目的References，添加Unity库引用:\n\t\tUnity\\Editor\\Data\\Managed\\UnityEditor.dll\n\t\tUnity\\Editor\\Data\\Managed\\UnityEngine.dll\n\n\t3: 编译，并且将相关文件拷贝到unity3d_nav_critterai\\unity3d-x.x（具体文件参考已经编译好的unity3d-5.x-64bit中的内容）\n\n## 使用方法参考项目:\n\t\n\t1：将unity3d_nav_critterai\\unity3d-x.x\\Assets拷贝到Unity项目对应的Assets中\n\t2：打开Unity3D创建一个新的3D游戏项目并且在游戏场景中添加一个地形与天空盒子，地形创建后在项目中资源名称叫“New Terrain.asset”\n\t3：将unity3d/Assets目录下的所有目录与文件拷贝到你的Unity3D游戏项目对应的Assets下，现在我们的编辑器效果与游戏资产库文件夹中内容如下图\n\n![cainav1](https://kbengine.github.io/assets/img/screenshots/cainav1.jpg)\n\n\t4：在游戏项目菜单中选择（CritterAI-\u003eCreate NMGen Assets-\u003eNavmesh Build : Standard）初始化，初始化完毕后\n\t项目目录中将出现几个文件，他们如下:\n\t\tCAIBakedNavmesh.asset\n\t\tMeshCompiler.asset\n\t\tNavmeshBuild.asset\n\t\n\t5：添加一个能生成地形寻路网格的Compiler，（CritterAI-\u003eCreate NMGen Assets-\u003eCompiler : Terrain）\n\n![cainav2](https://kbengine.github.io/assets/img/screenshots/cainav2.jpg)\n\n\t我们还需要将我们之前创建的地形绑定到TerrainCompiler上。\n\n![cainav3](https://kbengine.github.io/assets/img/screenshots/cainav3.jpg)\n\n\t6：开始生成Navmesh\n\n![cainav4](https://kbengine.github.io/assets/img/screenshots/cainav4.jpg)\n\n\t7：导出为文件，此时会出现2个文件，其中“srv_”开头的文件用于服务端寻路，另一个则可用于客户端使用该插件来寻路。\n\n![cainav5](https://kbengine.github.io/assets/img/screenshots/cainav5.jpg)\n\n\t(注意: 生成完毕后建议删除Unity3D项目中Assets\\Plugins下关于CAINav的文件，否则启动游戏会造成无法导出游戏的错误，原因未知。)\n\n\t8：将“srv_”这个文件拷贝到服务端资产目录，例如：“D:\\kbe\\kbengine\\kbengine_demos_assets\\res\\spaces\\xinshoucun”\n\t重启服务端后，服务端该场景会加载这个资源用于寻路（注意：要正确寻路服务端实体必须在有效坐标范围内，即必须在Navmesh地表上）\n\n\t（更多功能请参考该插件官网：http://www.critterai.org/projects/cainav/）\n\n\n## 演示项目参考：\n\n\thttps://github.com/kbengine/kbengine_unity3d_warring\n\n\n\n\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkbengine%2Funity3d_nav_critterai","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkbengine%2Funity3d_nav_critterai","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkbengine%2Funity3d_nav_critterai/lists"}