3 ms·
Does anybody have experience with component systems like the one used in the engine in large projects? I feel like they all work well with components like Posit
by torlok 2y ago
Does anybody have experience with component systems like the one used in the engine in large projects? I feel like they all work well with components like Position and Velocity, but for anything less genetic, when you need to control what updates, when, and in what order, it looks like a nightmare to use. I get the same vibes as when using a genetic physics engine for a game; you end up messing with mass, gravity and casting a ton of rays just to get the behaviour you want. Maybe in sandbox games the trade off is worth it.
- mpwoz 2y agoFor context, I recently completed a game on a team of 4 devs who were all relatively new to ECS for the last bevy game jam [1] Initially, we struggled a bit with how much ceremony there seemed to be to make simple stuff like movement work within the paradigm of an ECS (entity component system) engine. But by the end of the week I think i can safely speak for all of us when i say we came away impressed by how organized everything was - despite everyone working on different pieces at a frantic pace for a week. One concrete example is a last minute addition of little text dialog popups over various entities in response to different events : enemy sighting a player, player respawning, reaching an objective, etc. This ended up being trivial once the system for picking which line to say was in place, largely thanks to ecs and bevy’s event system. Now i wouldn’t want to go back to the gameObject / update function way of structuring things ecs and bevy actually really shine once you do cross a certain threshold of size/complexity - especially with multiple people working simultaneously. That said i do agree with you on the generalized physics engine point - we decided early on that was overkill and we could write our own collision and movement much faster, with better game feel to boot. [1] https://itch.io/jam/bevy-jam-5/rate/2824463 https://itch.io/jam/bevy-jam-5/rate/2824463