11 个版本
0.2.7 | 2022年11月21日 |
---|---|
0.2.6 | 2022年1月31日 |
0.2.5 | 2021年12月12日 |
0.1.2 | 2021年7月24日 |
在 #shard 中排名第 2
每月下载量 26
170KB
4K SLoC
Shard
Shard 是一个基于 Archetype 的实体组件系统,用 Rust 实现。
功能
- 系统(目前)是隐式的。
- 支持 #![no_std] 环境。(需要 alloc)
- 每个实体最多 14 个组件。
- 最多 65K 个 archetypes。
- 最多 16.7 百万个实体。
- 无依赖。
- (大部分)已进行单元测试。
使用方法
请参阅示例目录以获取详细信息,但简而言之
- 为希望用作组件的类型实现 Component 特性。
- 创建一个 Registry。
- 使用 Registry 构造实体。
- 向实体添加或从实体中删除组件。
- 遍历与某些组件子集匹配的实体。
待办事项
- 查询支持
过滤器迭代器=> 0.2.3 版本已完成。- Component 的过程式 derive 宏 => 0.2.6 版本已完成。
- 允许替换组件。
- 允许一次性添加/删除多个组件。
- 使用图加速 archetype 查找。
- 组件依赖/排除。
依赖
~220KB