ECS: 大矩阵模型 The Big Matrix Model
介绍 ECS 的大矩阵模型,并讨论分页、指针稳定性、最短集和 fast forward 迭代优化。
EXPLORATIONS IN SIMULATION, LEARNING, AND SYSTEMS.
介绍 ECS 的大矩阵模型,并讨论分页、指针稳定性、最短集和 fast forward 迭代优化。
整理稀疏集如何通过分页存储、墓碑实体和墓碑版本号维持组件指针稳定性。
整理空实体、墓碑版本与稀疏数组版本信息如何共同降低指针稳定性的迭代和查找成本。
比较 ECS 中的独立池、表格存储和 EnTT 分组模型,梳理混合存储带来的收益与隐藏复杂度。
整理 EnTT 类型标识符从运行时顺序生成到编译时哈希的演进,以及跨动态库 ABI 边界时的稳定性问题。
记录 EnTT 在稀疏集上的内存分页、空实体查找优化,以及反向迭代策略。
整理 ECS 分组的本质、嵌套分组的维护顺序,以及 perfect SoA 布局背后的代价。
整理 ECS 中共享数据的常见模型,包括 flyweight、chunk、层级、主从、ownerless、copy-on-write 与 prototype。
整理稀疏集作为组件池时的排序问题,比较原地排序、排列向量和混合方法的实现取舍。
整理 ECS 中父子层级关系的存储、遍历、排序与脏传播策略,并比较链表、局部排序和 archetype 方案。
整理 ECS 稀疏集组件池中的 Group 机制,以及 EnTT 中 Full-Owning、Partial-Owning、Non-Owning 三类分组。
整理 ECS 中实体标识符复用、隐式链表空洞回收,以及版本号校验失效标识符的基本思路。
从 OOP 与面向数据的差异出发,整理 ECS 中实体、组件和系统的基本设计动机。
整理 ECS 中判断实体组件集合的两种常见实现:Archetypes 和 Sparse Sets,并延伸到实体归属与组件归属。