3 ms·
> You can use ECS without "being data-driven", and you can use data-driven workflows without ECS. True, I've read about ECS being used for one or both of those
by Vaskivo 6y ago
> You can use ECS without "being data-driven", and you can use data-driven workflows without ECS.
True, I've read about ECS being used for one or both of those purposes.
My first contact was ECS was as a composability pattern. So, in a "high level" purpose, as an alternative to inheritance. It was also described as "Game Object - Game component" pattern.
See http://gameprogrammingpatterns.com/component.html http://gameprogrammingpatterns.com/component.html, specially the sidenote in http://gameprogrammingpatterns.com/component.html#no-bj%C3%B8rn-at-all http://gameprogrammingpatterns.com/component.html#no-bj%C3%B....
There's the "performance" ECS, where it tackles data locality.
And the "game element definition and configuration" ECS, where it solves a high level problem of building game elements. On the "game developer" level, Unity works like this.