林一二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
技能系统
UE 自带的 Gameplay Ability System (不过和他们的游戏绑定过重,而且目前还没通用化重构)
任务列表 1
Undefined widget 'basic-table'Undefined widget 'supertag-form'