bevy_landmass
Bevy 游戏引擎的导航插件,提供 AI 角色的寻路和局部碰撞规避功能。
生态系统定位
不是单一库,而是三层架构的集成层:
landmass→ 引擎无关的核心导航算法bevy_landmass→ Bevy ECS 整合层landmass_oxidized_navigation→ 自动化 navmesh 生成
核心概念
| 概念 | 角色 |
|---|---|
Archipelago | 导航世界容器,管理所有 Island 和 Agent |
Island | 单一连续可导航区域 |
NavMesh | 定义 Island 可行走表面的数据结构 |
Agent | 需要导航的实体 |
AgentDesiredVelocity | 库输出的建议速度(开发者读取后应用到 Transform) |
控制契约
输入(开发者):添加 AgentTarget 组件指定目标
输出(库):系统写入 AgentDesiredVelocity
行动(开发者):查询 AgentDesiredVelocity 并应用到 Transform
支持维度
通过 CoordinateSystem trait 支持 2D 和 3D,具体实现为 TwoD 和 ThreeD。
自动化工作流
与 landmass_oxidized_navigation 集成后,可从物理碰撞体自动生成 navmesh,无需手动编制。
相关
- landmass — 核心算法 crate
- oxidized-navigation — navmesh 自动生成
- bevy-navigation-solutions — Bevy 导航方案对比