Entity Component Architecture
Chris Wright via Digitalmars-d
digitalmars-d at puremagic.com
Fri Aug 26 18:00:10 PDT 2016
On Fri, 26 Aug 2016 23:59:05 +0000, Lurker wrote:
> On Friday, 26 August 2016 at 19:55:30 UTC, vladdeSV wrote:
>> What I can conclude so far is my approach uses a lot of processing
>> power. I did a test where I generated 10000 entities and it drained my
>> CPU to 50%.
>>
>> All feedback is appreciated. Thank you for your input :)
>
> hasComponent()/getComponent() should be O(1) and preferrably CTFEable.
>
> You could turn Entity into a template, or store a bitmask of applied
> Components etc.
Which requires specifying in advance every component the system contains.
Part of the reason for using a loose component architecture like this is
making it trivial to add features that require additional data.
I suppose you could do this with runtime reflection -- iterate through
all modules, then all classes in those modules, check each to see if it's
convertible to Component, then generate the bitfield. Awkward.
More information about the Digitalmars-d
mailing list