ECS技能系统学习

林一二2024年12月26日 16:17

ECS 基础

我现在觉得 ECS 对用户来说,本质上是一种依赖注入,或者说控制反转设计模式。如果通过查询来取数据和通过传参取数据一样快,系统函数就不需要依赖层层传参了,而是可以按需取数据。这样就可以随意调整系统的排序,而不用一次次调整传参相关代码。

因为有缓存,所以每个函数里重复跑同一个查询是不用重复计算的,基本和函数传参一样便宜。

当然对于框架自己来说,它通过建多个临时表,每个表仅在组件增删时更新,这样重复读取某个表时就不用重复计算了。

http://bitsquid.blogspot.com/2014/08/building-data-oriented-entity-system.html Austin Morlan - A Simple Entity Component System (ECS) [C++]

《守望先锋》架构设计与网络同步 -- GDC2017 精品分享实录-腾讯游戏学院

games102作业框架 Ubpa Entity-Component-System (U ECS) in Unity3D-style - Ubpa/UECS

Youtube game engine 系列

技能系统

UE 自带的 Gameplay Ability System (不过和他们的游戏绑定过重,而且目前还没通用化重构)

解析ActionRPG

任务列表 1

Undefined widget 'basic-table'

Undefined widget 'supertag-form'