Very simple ECS using a Dictionary to associate entities with their components. Easy to write and reason about.
More elegant and generic design, but the added abstractions make it much slower in practice.
Same general approach as iteration 1, but with small structural changes that significantly improve performance.
Component storage is reworked to reduce overhead and simplify access patterns.
Improves how entities and components are looked up, reducing unnecessary work.
Further simplification of the core logic with a focus on faster component access.
Data is packed more tightly in memory to improve iteration speed.
Moves toward more direct collections (arrays/lists) to reduce indirection.
Iteration logic is tightened to avoid touching irrelevant entities.
Focuses on processing large amounts of data in tight loops for better throughput.
Final pass combining previous optimizations and small tweaks for maximum performance.