How to implement an Entity Component System (ECS)
- in C-like JavaScript, no OOP inheritance hierarchies
- a "pure" ECS where entities are nothing more than IDs
authored by Nick the (Arcane) Engineer and Games Developer.
Written for those who want to see the process by which an ECS evolves from a naïve initial implementation to something more powerful.
- Part 1 Tutorial | Source Code | Demo (ECS foundations with simple components)
- Part 2 Tutorial | Source Code | Demo (Complex components: motion component, turning turrets and bullet entity type)
- Part 3 Tutorial | Source Code | Demo (ECS-based initialisation)
- Part 4 Tutorial | Source Code | Demo (ECS-based game logic updates)
- Part 5 Tutorial | Source Code | Demo (ECS-based rendering)
- Part 6 Tutorial | Source Code | Demo (ECS encapsulation and user code organisation)
Good luck, happy learning!