6个版本 (3个破坏性更新)
0.5.0 | 2022年8月1日 |
---|---|
0.4.0 | 2022年4月16日 |
0.3.11 | 2022年4月11日 |
0.3.0 | 2022年3月16日 |
0.2.0 | 2022年3月15日 |
#2314 在 游戏开发
每月 22次下载
29KB
560 行
bevy精灵网格
这是一个非常基础的框架,用于在网格中绘制精灵。
SpriteGridPlugin只有一个系统。SpriteGrid是一个具有SpriteGrid组件的单个实体,类似于大多数Bevy可渲染实体,具有Transform、GlobalTransform、ComputedVisibility和Visibility组件。
绘制是通过内置的Bevy精灵渲染器完成的。不会创建任何中间精灵实体。
它支持常规的Bevy精灵、来自TextureAtlas的精灵,或它们的组合,或者它可以直接绘制未纹理的四边形,如果你只需要棋盘或类似的东西。
创建SpriteGridBundle类似于创建普通的Bevy SpriteBundle。应用于SpriteGrid实体的变换应该正确地传播到其精灵。
没有适当的文档,但在/examples目录中有很多示例。
性能应该很好,并且对于大多数实际用途来说已经足够。不过,它没有进行任何优化,除了屏幕外网格单元的剔除。只要大多数单元格都不可见,SpriteGrid有多少单元格(即使是数百万个)都不会影响。
数学处理有点混乱,可能包含一些不必要的操作。SpriteGrid API也在不断改进中。
如果你正在开发基于瓦片的2D游戏,你几乎肯定想使用bevy_ecs_tilemap,它支持良好,性能优秀,功能丰富。
版本0.5
更新以支持Bevy 0.8。API未更改,但SpriteGrid实体现在需要ComputedVisibility组件才能显示。
版本0.4
更新以支持Bevy 0.7
依赖项
~42–56MB
~805K SLoC