Hacker Newsnew | past | comments | ask | show | jobs | submit | allanjansen2's commentslogin

What do you think of Unity's ECS approach, and how are you approaching it differently with Bevy?


First: I won't pretend to be a Unity DOTS expert, but I have worked with it briefly. There are many similarities:

1. The general data model: entities, components, systems

2. Running systems in parallel

3. Archetypal ECS: a specific ECS storage strategy that groups entities of the same "data layout" together to increase cache friendliness during iteration.

Bevy has a lot of query/filtering/change detection features that I haven't seen implemented the same way elsewhere. But I can't comment on whether or not Unity DOTS has those features because I don't have enough experience with it.

I think we differ the most in UX. Wild (hard to verify) claim: I think Bevy has the most ergonomic ECS in existence. If you compare a Unity example (https://github.com/Unity-Technologies/EntityComponentSystemS...) to a Bevy example (https://github.com/bevyengine/bevy/blob/master/examples/2d/s...), I think its clear which one is easier to read/write (especially when you factor in the fact that the Bevy example is fully self contained). But its also worth pointing out that Unity is still one of the _more_ ergonomic ECS-es out there. Its still pretty good.


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: