6 ms·
> Seeing this 700 nodes graph with all the dependencies screams technical debt and domino effect Imagine all the various features of the game, it's a city simu
by CaptainOfCoit 3y ago
> Seeing this 700 nodes graph with all the dependencies screams technical debt and domino effect
Imagine all the various features of the game, it's a city simulation game that currently scales up to a population about 1 million before even 32-core CPUs start to suffer.
You'd have a large code base creating this, no matter the approach.
The game also relies a lot on modding to add additional content from the community. This used to be a big hassle when the first game relied a lot on inheritance. Mods broke each other frequently.
With ECS and this (relatively) decoupled design, modding becomes a lot easier as it almost provides hooks out-of-the-box for you to add your own functionality.
> Not sure if there's anything better right now, but seeing everyone copy what Unity did feels like there isn't a ton of innovation in how to build gameplay systems
ECS isn't really a Unity innovation at all, it has existed for longer than Unity Engine.
Personally, even if ECS had similar performance as the more traditional approaches, I'd still use ECS for my own games as it's just easier to write and reason about a decoupled ECS design, compared to the alternatives.
But then I've mostly used ECS via Bevy, rather than Unity ECS, maybe Unity ECS is a bit more verbose and gets in your way, compared to Bevy ECS.