ECS
Introduction to Entity-Component-System (ECS) architecture
What is an ECS ?
The Entity-Component-System (ECS) architectural pattern is a cornerstone in the world of software development, particularly in the realm of game application development. This pattern has gained widespread adoption due to its elegance, flexibility, and its natural alignment with the "composition over inheritance" principle, which empowers developers to create complex and dynamic systems. ECS excels at managing entities, the building blocks of a game's world, in a way that promotes scalability, modularity, and high performance by default.
This system consists of three terms.
Entity
An entity is a distinct object representing an actor in a simulated space. It has not actual data or behavior. This Component gives an entity its data. It is typically a struct or dictionary.
Component
A Component is a singular behavior ascribed to an entity. The name of an element should ideally communicate what behavior the entity will exhibit. However, the component itself has no behavior. They are reusable modules that are attached to entities. The component provides appearance, behavior, and functionality.
System
A system will iterate many components to perform low-level functions such as rendering graphics, performing physics calculations or pathfinding. It offers global scope, management, and services for classes of components.
Last updated