The Entity Systems wiki is pretty good – simple source-code examples in 5 different languages, and links to 10 x richer, more complex “frameworks”.
But it’s got little (almost nothing) in links to articles, introductions, tutorials on the topic. I know there’s a lot that’s been written – just look at all the trackbacks on my old ES blog posts.
Let’s fill out a page on the wiki with tutorials, techniques, etc. What are your favourites (and can you give a 1-sentence summary of what each one does well?)
3 replies on “Your best links and articles on Entity Systems / Component Systems”
Maybe this help in some way http://www.dataorienteddesign.com/dodmain/
Just stumbled upon an open-source game using ES design http://www.chris-granger.com/2012/12/11/anatomy-of-a-knockout/
I like your collections on thoughts and articles about entity systems. Actually, there are a reasonable number of scientific publications on this topic out now. They all come from a very related area: Virtual and Augmented Reality (VR/AR) where these systems are also called RIS (Real-Time Interactive Systems).
RIS and game engines have many similarities, actually, most of us consider game engines to be a special type of RIS with a reduced feature set and many use game engines like Unity or Unreal Engine for their work when the requirements allow this. In addition, with cheap VR goggles like the Oculus etc. becoming more and more popular, game engines sooner or later will have to cope with the enhanced requirements of VR/AR (and they have to already).
In this community, researchers came along exactly the same path. Starting with typical OOP models to represent application state, it became obvious that this enforces a too strong coupling of the sub systems (or processors) to provide a reasonable cohesion which affected reusability. There is also a conference on RIS architectures called SEARIS (Software Engineering and Architectures for RIS) running together with the IEEE VR conference, see: http://www.searis.net
As a start, here are some publications discussing entity systems and the rational to use them :
[Steed, 2008] Steed, A. (2008). Some useful abstractions for re-usable virtual environment platforms. In Latoschik, M. E., Reiners, D., Blach, R., Figueroa, P., and Dachselt, R., editors, Software Engineering and Architectures for Realtime Interactive Systems (SEARIS), proceedings of the IEEE Virtual Reality 2008 workshop, pages 33–36. Shaker Verlag.
[Latoschik and Tramberend, 2012] Latoschik, M. and Tramberend, H. (2012). A scala-based actor-entity architecture for intelligent interactive simulations. In Software Engineering and Architectures for Realtime Interactive Systems (SEARIS), 2012 5th Workshop on, pages 9–17.
[Alatalo, 2011] Alatalo, T. (2011). An entity-component model for extensible virtual worlds. IEEE Internet Computing, 15(5):30–37.
[Latoschik and Tramberend, 2010] Latoschik, M. E. and Tramberend, H. (2010). Engineering Realtime In- teractive Systems: Coupling & Cohesion of Architecture Mechanisms. In Kuhlen, T., Coquillart, S., and Interrante, V., editors, Proceedings of the Joint Virtual Reality Conference of Euro VR – EGVE – VEC, EG Symposium Proceedings, pages 25–28.
[Mannuß et al., 2008] Mannuß, F., Hinkenjann, A., and Maiero, J. (2008). From scene graph centered to entity centered virtual environments. In Latoschik, M. E., Reiners, D., Blach, R., Figueroa, P., and Dachselt, R., editors, Software Engineering and Architectures for Realtime Interactive Systems (SEARIS), proceedings of the IEEE Virtual Reality 2008 workshop, pages 37–40. Shaker Verlag.
[Kapolka et al., 2002] Kapolka, A., McGregor, D., and Capps, M. (2002). A unified component framework for dynamically extensible virtual environments. In Fourth ACM International Conference on Collaborative Virtual Environments.