19个版本 (9个破坏性版本)
0.10.0 | 2024年7月5日 |
---|---|
0.9.0 | 2024年5月3日 |
0.7.0 | 2024年3月4日 |
0.2.5 | 2023年12月28日 |
0.2.2 | 2023年11月30日 |
#119 在 游戏开发
每月354次下载
550KB
14K SLoC
Bevy EntiTiles 🗺️
Bevy的2D瓦片地图库。内置了许多实用的算法/工具。
不推荐使用dev
分支中的代码!那里充满了不完整的代码甚至错误!但如果您迫不及待想要尝试新功能,那么master
分支将是不错的选择。
目前,文档并不十分全面。如果您遇到任何问题,请随时提交问题或在bevy Discord服务器上ping我或直接私信 @443eb9。
这个crate主要受到 bevy_ecs_tilemap
(渲染) 和 bevy_ecs_ldtk
(LDtk实体生成) 的启发。
为什么选择EntiTiles
- 最新版本 一旦Bevy的新版本发布,
bevy_entitiles
将在12小时内跟进大部分更新。 - 性能强大 能够在10600KF + 3070上以200+fps渲染1000x1000的瓦片地图。
- 内置丰富功能 内置了有用的算法(路径查找、WFC...)和工具(LDtk和Tiled导入器...)。
警告!
您绝对不应该安装以下版本!它们包含关键错误,不推荐使用!
0.6.0
限制
- 每个瓦片地图支持最多4个渲染层*。
* 渲染层是指将要被渲染的层。您可以插入任意多的层,但只有最上面的4层会被渲染。
未来目标
优先级越高,以下列表中的位置越靠前。
- 更多瓦片地图形状(三角形、Voronoi)
- 路径查找(并行A*路径查找)
- LDtk 支持(自动将
EntityRef
映射到真实实体) - Tiled 支持(算法相关,自动将
object
类型映射到真实实体) - 瓦片地图序列化(自定义二进制格式)
- 王瓦片铺贴
- 瓦片地图遮罩
视锥剔除物理无限瓦片地图块卸载自定义材质
正在寻找已删除的渲染功能?它们已被移至 bevy_incandescent
(一个当前处于开发中的2D光照crate)!
功能标志
标志 | 功能 |
---|---|
算法 |
算法的实现 |
图集 |
在整个纹理上使用计算出的UV坐标,而不是使用纹理数组。 |
调试 |
显示一些调试信息,包括块和瓦片图的aabbs,路径查找结果等。 |
ldtk |
LDtk 支持。 |
多线程 |
支持异步运行算法。如果目标是wasm,请禁用此功能。 |
物理 |
使用 bevy_xpbd 支持物理。 |
序列化 |
从文件中保存和加载瓦片图。还包含用于升级文件的工具。 |
tiled |
Tiled 支持。 |
坐标系
瓦片图中x和y轴是索引轴。单个瓦片上的x和y表示实际网格大小。您可以使用 tile_render_size
控制它。

这里的 legs
在数学上是不正确的,请将其视为一个新概念。
展示
请参阅 README
中的 examples
。
资产
版本
LDtk版本是json api已更改的版本。因此,您也可以在0.2.7中使用1.5.2。有关更多信息,请参阅此。
这并不意味着LDtk和Tiled对应版本的全部功能都得到支持,但此crate使用从它们生成的源瓦片图文件!
Bevy版本 | EntiTiles版本 | LDtk版本 | Tiled版本 |
---|---|---|---|
0.13.x | 0.6.0-0.9.0 | 1.5.3 | 1.10.2 |
0.12.x | 0.4.0-0.5.0 | 1.5.3 | 1.10.2 |
0.12.x | 0.3.0 | 1.5.3 | 不支持 |
0.12.x | 0.2.7 | 1.5.1 | 不支持 |
0.12.x | 0.2.3-0.2.6 | 1.4.1 | 不支持 |
0.12.x | 0.2.0-0.2.2 | 不支持 | 不支持 |
0.11.x | 0.1.x | 不支持 | 不支持 |
0.3.0之前的版本不遵循语义版本控制
。
依赖项
~38–76MB
~1.5M SLoC