Entity Component Architecture

vladdeSV via Digitalmars-d digitalmars-d at puremagic.com
Wed Aug 24 10:57:33 PDT 2016


Hi,

I have created a project, which is an Entity Component System 
(ECS)-like structural setup for projects. It is to be used as 
building blocks for (most likely) games.

I call it 'Entity Component Architecture' (ECA).

The difference from ECS to ECA is fundamentally different. ECS 
consists of three parts: the Entity, Component and it's System. 
ECS uses systems to handle the entity's logic based upon the data 
in the entity's components.

ECA however, only has two pieces, namely Entity and Component. In 
ECA, the logic of the entity is calculated in the components 
themselves, which also usually contains data.

For me personally, this approach felt more reasonable to use. The 
entities' logic is directly handled in the components, and not in 
systems (which might be scattered around in code (Can very well 
vary from dev to dev)).

Now, the main reason why I write here is because: I wrote ECA for 
a school project, and I am going to write about this type of 
project structure. Since I do not have much experience with ECS 
or bigger scale game development, what do you people think of 
this new approach?

I am searching for feedback. What do you think it's pros and cons 
are? Preformance, memory usage, scaleability, etc?

:)

---

My ECA project can be found at https://github.com/vladdeSV/eca-d
The README.md contains snippets of typical code usage, and the 
docs contain examples (specifically 'source/package.d')


More information about the Digitalmars-d mailing list