ECS? What does it mean?
Entity-component-system (ECS) is a software architectural pattern in a nutshell, mostly used on video game development, this approach differs on some ways of programming often used on object-oriented programming (OOP), doing emphasis on composition principle over inheritance, for example.
What is inside?
How is this? Well here’s the thing, to make the logic of a bird, usually first we make the class “animal” and “bird” inheritance from it, but with ECS we have an empty entity with just an ID, and movement, flying, hit points… are divided in components, then the system “BirdsSystem” store and execute the logic on entities with the correct composition of components.
This pattern with the proper framework can be very optimize, and Unity knows that, so they did Data-Oriented Technology System (DOTS), a group of packages which replace key parts of the engine such as physics, rendering, compiler… and ECS as software architecture model, this changes gives the boost of FPS.
Should I use it?
Unfortunately, can’t be as good as it has seen, DOTS still on process right now and most of the packages necessary to work with is still on preview or experimental states, also there are Unity features not ECS ready which need middle solutions to work with.
On Strange World we highly recommend ECS models, as pattern, but making games with DOTS may slow down your development, because of learning a new way of programming and future updates. DOTS will be great, and we really hope a LTS version of it, but for now, will remain as the next promise.
What is new on Strange World?
Subscribe to newsletter.