Entity component system

Entity component system (ECS) is a software architectural pattern mostly used in video game development for the representation of game world objects. An ECS comprises entities composed from components of data, with systems which operate on the components.

ECS follows the principle of composition over inheritance, meaning that every entity is defined not by a type hierarchy, but by the components that are associated with it. Systems act globally over all entities which have the required components.

Due to an ambiguity in the English language, however, a common interpretation of the name is that an ECS is a system comprising entities and components. For example, in the 2013 talk at GDC, Scott Bilas compares a C++ object system and his new custom component system. This is consistent with a traditional use of system term in general systems engineering with Common Lisp Object System and type system as examples.

This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.