8个版本 (破坏性)
0.7.0 | 2024年7月10日 |
---|---|
0.6.1 | 2024年5月14日 |
0.5.0 | 2023年7月15日 |
0.4.0 | 2023年5月7日 |
0.1.0 | 2022年10月8日 |
#541 in 游戏开发
每月479次下载
用于 seldom_pixel
45KB
607 行
seldom_map_nav
seldom_map_nav
是一个Bevy插件,用于生成导航网格、路径查找和瓦片地图的导航。无需Bevy依赖即可生成导航网格。它对您使用的瓦片地图解决方案无关,但不需要太多的粘合剂。它对您的位置类型也无关紧要,只要它实现了 Position2
(例如 Transform
)。它与 seldom_state
的 state
功能兼容。
特性
- 适用于有限、方形瓦片地图的导航网格生成
- 了解导航器的物理尺寸
- Bevy插件用于路径查找和导航
- 与
seldom_state
集成
未来工作
此crate目前处于维护模式,因此我目前没有添加新功能。
- 在特定情况下可以路径穿越的瓦片,例如门
- 不能路径穿越的瓦片,但不需要生成清理区域,例如孔洞
生成的路径不一定是最佳路径,即使在高质量设置下也是如此,但我不打算自己修复这个问题。如果可能的话,我可能会切换依赖来改善这一点。
seldom_state
兼容性
如果启用 state
功能,当导航完成时(如果到达目的地或找不到路径),将触发 DoneTrigger
。另请参阅相关示例: cargo run --example state --features="state"
用法
将其添加到您的 Cargo.toml
# Replace * with your desired version
[dependencies]
seldom_map_nav = "*"
要生成没有 Bevy 集成的 navmesh,请禁用 bevy
功能,并使用 Navmeshes::generate
或 seldom_map_nav::mesh::generate_navmesh
。请参阅 no_bevy.rs
示例。
要生成路径而不使用内置导航,请将 MapNavPlugin
添加到您的应用程序中,将 Navmeshes
组件添加到您的瓦片地图(或任何其他实体),并将 Pathfind
组件添加到您的导航实体。要使用内置导航,还请将 Nav
组件添加到您的导航实体。请参阅 nav.rs
示例。如果您在生成路径时遇到困难,请启用 log
功能,它可能会告诉您问题所在。
如果您需要帮助,请随时在 Bevy Discord 服务器(@Seldom
)上 ping 我!如果任何文档需要改进,请随时提交问题或 pr!
兼容性
Bevy | seldom_state |
seldom_map_nav |
---|---|---|
0.14 | 0.11 | 0.7 |
0.13 | 0.10 | 0.6 |
0.11 | 0.7 | 0.5 |
0.10 | 0.6 | 0.4 |
0.10 | 0.5 | 0.3 |
0.9 | 0.3 | 0.2 |
0.8 | 0.2 | 0.1 |
许可证
seldom_map_nav
可根据您的选择在 MIT 和 Apache 2.0 许可证下双许可。
贡献
除非您明确表示,否则任何有意提交给作品以供您包含的贡献,根据 Apache-2.0 许可证定义,应按上述方式双许可,不附加任何额外条款或条件。
依赖关系
~28MB
~535K SLoC