entity-component-system框架
Go to file
2023-08-15 16:48:55 +08:00
examples 删除通用组件,调整example代码 2023-08-14 14:48:37 +08:00
.gitignore 初始版本 2023-08-04 11:02:08 +08:00
component.go 初始版本 2023-08-04 11:02:08 +08:00
ecs_test.go 初始版本 2023-08-04 11:02:08 +08:00
entity.go 初始版本 2023-08-04 11:02:08 +08:00
entry.go 初始版本 2023-08-04 11:02:08 +08:00
events.go 初始版本 2023-08-04 11:02:08 +08:00
go.mod 初始版本 2023-08-04 11:02:08 +08:00
go.sum 初始版本 2023-08-04 11:02:08 +08:00
query.go 初始版本 2023-08-04 11:02:08 +08:00
README.md 添加一些代码说明 2023-08-04 13:15:42 +08:00
system.go 初始版本 2023-08-04 11:02:08 +08:00
world.go world 状态获取 2023-08-15 16:48:55 +08:00

ECS(Entity Component System)框架

框架暂时基于donburi实现

核心组件概念

  • 组件数据:保存状态的数据结构
  • 组件(Component):组件数据的包装,调用 ecs.NewComponentType 生成的组件对象
  • 实体(Entity)一个或多个组件构成一个实体World.Create 或 World.CreateMany 创建
  • 入口(Entry):对实体进行操作的入口,获取或修改实体组件数据
  • 查询(Query): 用于组件查询,可以使用多种过滤器,同一个 Query 不能多线程使用
  • 过滤器(filter):组件查询使用
  • 系统(ISystem):对于功能逻辑的抽象,用于更新组件数据