Overview
Different kinds of ES: there are many different ways of architecting an ES, and even more ways of implementing it. This page is a dumping ground for different approaches that people have taken.
For similar-but-different stuff, see Related Technologies
For source code projects you can download, see ES Implementations
Core Architectures
Fundamental approaches to building an ES. NB: there's no accepted "right" way of doing this (yet); if something is included here, it's not necessarily recommended!
- RDBMS Inspired (the core idea behind the ES Alpha/Beta/…etc approaches)
- a.k.a. "ES Alpha": RDBMS With Code in Systems (the t-machine approach)
- a.k.a. "ES Beta": RDBMS Beta (upgraded version of RDMBS-with-code-in-Systems)
- Aggregate OOP with Message-passing
- How NOT to do an entity system; entities the oo way with logic included
(uncategorized; need to be added to one of the above pages, or have new page created)
3rd Party Frameworks
NB: most of the "Architectures" in the section above has open-source implementations on the relevant pages. Items listed in this section are alternative frameworks, usually a lot more complex and feature rich
- TyphonRT - 2011 launch; component oriented platform for real time app & game dev for Java spanning J2SE & Android; GPLv3 w/ commercial license. A component based entity system is a central feature.
- DtEntity - A c++ entity system for OpenSceneGraph. Features: XML map system, sandbox editor, JavaScript bindings, plugin system.
- Ember an opensource entity system framework in actionscript3 with dependency injection
- Grease A component-based entity game engine framework for Python. Fully OSS under an MIT license. Still early, but has good docs and is being actively developed.
- Rainweaver "The Rainweaver Framework is a collection of common and not so common utilities for game developers using the .NET Framework ver. 3.5. Contains an Entity System implementation."
Philosophies (less precise than the section above)
A bunch of people have written about ES / CS in detail, mostly description and philosophy, rather than source code. These articles are generally VERY widely referenced and read, included here because if you haven't read these, you probably should:





