These are the slides of a talk I gave at the Italian C++ Conference 2019 in Milan. The conference was organized by the Italian C++ Community.
The goal of the talk was to present the three best known and apparently most used models for the implementation of a software (either a game or whatever) based on the entity-component-system architectural pattern.

In particular:

  • The Big Array: used by entityx among the others, probably one of the first ECS libraries in C++.
  • Archetypes: used in the Unity engine, but also by decs if you’re looking for an open-source implementation in C++.
  • Sparse Set: used by EnTT, an ECS library in modern C++ and of which I’m also the author.

In just 50 minutes I tried to go through the pros and cons of these models (probably failing in the attempt, but I did my best), hoping to give a grasp of the topic to those interested.

The talk was also recorded. You can find the full video here.
Thanks to the Italian C++ Community for the opportunity to show to the world how bad is my English. :-)

Let me know that it helped

I hope you enjoyed what you’ve read so far.

If you liked this post and want to say thanks, consider to star the GitHub project that hosts this blog. It’s the only way you have to let me know that you appreciate my work.

Thanks.