YYKA NavMesh可视化网格导航插件介绍

Cocos Creator 3.8+ 导航网格(NavMesh)烘焙 + 运行时寻路/避让一体化扩展。

✨ 功能特性

  • 一键烘焙导航网格:场景几何(MeshRenderer × 世界矩阵)→ 体素化 → 多层可行走多边形,产出 .ynm.json 资产;确定性输出(同输入逐字节一致),带进度与统计(三角形/多边形/层数/耗时)。
  • 节点标注(烘焙输入):阻挡(挖洞,Agent 绕行)/ 代价(区域减速计价),圆柱/盒形状,逐条可编辑/移动/删除,改完一键重烘。
  • 跳台 OffMeshLink:跨越沟壑/落差;场景里点一下落锚点、连点成链;两端垂直吸附(容差 0.6m)、逐层跳跃、跨越事件可做跳跃动画。
  • 运行时寻路 / 避让:A*(二叉堆 + 世代戳 + 节点预算)+ Simple Stupid Funnel 拉直;NavMeshAgent 贴面移动不穿墙、障碍落一帧内自动改道;Crowd 群体避让(邻域 + 速度采样 + LOD + 帧预算)。
  • 动态障碍(运行时):markBlockedCircle / addAreaBox 实时挖洞/计价,无需重烘(单块模式)。
  • 多地图管理:地图名(基名) → <名>nav.ynm.json + <名>links.json(跳台+笔刷合并);固定索引 assets/resources/yyka-navmesh/index.json 自动登记,下拉切换即回读该图。
  • 运行时实时构建(不预烘焙):buildNavMesh(node / mesh / 三角形) 现场构建导航网格,纯 TS、不依赖 wasm;适合程序化生成关卡、动态地图。
  • 纯 API(不挂组件):runtime/api 提供 loadNavMesh / NavAgent / NavCrowd / pathToPoints,代码驱动、对象池、服务器算路都能用。
  • 调试可视化:DebugDrawList + DebugRenderer 通用绘制(网格面/路径/点击反馈),也可用于你自己的调试。
  • 一键 Demo:弹窗二选一「烘焙式 / 实时式」,一键搭好示例场景跑通全流程。
  • 大世界支持:分块(YNMC1)运行时自动缝合 + 流式加载(NavMeshStreamer 视点预取/滞回卸载/帧预算)。
  • 分层安装:安装运行时时按需勾选(核心寻路 / 实时构建 / 调试绘制 / 示例 Demo),不勾不装,控制项目体积。
  • 附带「推荐插件」页,方便发现作者其他工具。

📋 使用说明

  1. 烘焙:菜单 面板 → yyka-navmesh 打开面板,设「地图名」+「目录」(默认 assets/resources/yyka-navmesh,可 resources.load 动态加载),选烘焙范围(空=全场景)→ 点「烘焙」。
  2. 安装运行时:点「安装运行时」→ 分层弹窗按需勾选 → 装到 assets/yyka-navmesh/runtime。
  3. 接线寻路(二选一):
    • 组件式:空节点挂 NavMeshSurface(拖入 nav.ynm.json,或填 mapName 运行时按名加载)→ 角色挂 NavMeshAgent → 脚本 agent.setDestination(目标)。
    • 纯 API 式:import { loadNavMesh, NavAgent } from 'db://yyka-navmesh/runtime/api' → const {query}=await loadNavMesh('yyka-navmesh/<名>nav') → new NavAgent(query,{...}).setDestination(...)。
  4. 预览/运行,点击地面即可看到角色寻路移动;标注、跳台改后重新烘焙即生效。

详细参数、事件、API 见随包 docs/usage.zh-CN.md / docs/api.zh-CN.md。

⚙️ 引擎与环境要求

  • Cocos Creator 3.8+(在 3.8.8 上开发验证)。
  • 从源码构建才需要 Node.js(npm install && npm run build);直接安装 release 包无需。
  • 运行时寻路为纯 TS,无额外原生依赖;wasm 查询内核(可选)随包在 static/wasm/,当前默认走 TS 后端。

🖥️ 平台支持情况

场景 支持情况
编辑器(烘焙/预览/面板) Windows / macOS(Cocos Creator 3.8 扩展)
运行时寻路(纯 TS) 跟随 Creator 3.8 的各发布平台(Web / 原生 / 小游戏等),无原生依赖
调试可视化 依赖引擎 builtin-unlit(顶点色),Creator 3.8 各平台可用
wasm 加速 已实现但默认未接入(可接 createQueryBackend 启用,失败自动回退 TS)

📜 更新日志

详见随包 CHANGELOG.md。当前 1.0.0 修订 6(2026-10-19):命名/固定索引统一、运行时实时构建、纯 API、调试绘制通用化、一键 Demo(烘焙/实时)、推荐插件页、分层安装,并修复网页端点击落点、预览数据对齐、重复挂组件等问题。

❓ 常见问题 FAQ

现象 原因 / 处理
面板全是灰的 未安装运行时,先点「一键安装运行时」
改了标注/跳台,网格没变 标注与跳台是烘焙输入,需重新烘焙
Agent 不动 Surface 未绑定资产 / 未 autoLoad;或地图名不对(运行时按名加载失败)——看控制台警告
预览/寻路数据对不上 确认面板「地图名」与目标图一致(预览按 <名>nav.ynm.json 读);下拉切图会自动回读
动态障碍不生效 动态障碍(modifiers)仅单块(YNM1);分块(YNMC1)大图下暂不支持
想运行时实时生成网格 用 buildNavMesh(node/mesh/三角形)(纯 TS);注意 cc.Terrain 暂无 CPU 三角形导出,需自行采样成 mesh
网页端点击落点漂移 旧版 demo 触摸用了 UI 坐标,已修;请用最新版并重新生成 Demo
运行卡 实时构建是全量同步,大场景只构建一次或分帧;寻路本身已做堆/世代戳/预算优化

⚠️ 购买须知

本产品为付费虚拟插件商品,一经购买成功概不退款,请支付前谨慎确认购买内容。

购买后获得对应版本授权,仅限授权范围内使用;
插件仅支持标注的 Cocos Creator 版本,请确认引擎版本符合要求再下单;
不包含定制开发服务,如有定制需求可单独咨询;
严禁二次分发、转售、反编译本插件。

📞 联系我们

如遇问题、有定制需求或希望增加功能,欢迎联系作者:

官网:https://www.yyka.cn

邮箱:yykacn@qq.com

公众号:智能运营咖

关键词

Cocos Creator、导航网格、NavMesh、寻路、寻路避让、A*、群体避障、动态障碍、跳台、OffMeshLink、烘焙、体素化、3D 游戏 AI、运行时构建、YYKA

感谢

感谢你选择 YYKA NavMesh。如果它帮你省下了搭寻路的功夫,欢迎向身边用 Cocos 做 3D 游戏的朋友推荐;有建议或想要的功能,也随时通过上面的方式找我——很多功能(实时构建、纯 API、分层安装)都来自用户反馈。祝开发顺利!