Differences
This shows you the differences between two versions of the page.
Next revision | Previous revision Next revisionBoth sides next revision | ||
en:toolworks:docs:apparatus:ecs [2021/04/02 22:10] – created jispar | en:toolworks:docs:apparatus:ecs [2021/04/08 00:57] – vladius | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | New ECS paradigm called ECS+ ! ! ! | + | ====== Introduction to ECS+ ====== |
+ | |||
+ | //ECS+ is a newer data-driven programming | ||
+ | |||
+ | Talking about OOP (object-oriented programming), | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | By using the base class properties we can change the current state of the objects in the derived class. But the problem is the game logic can become too scattered across those classes and layers. | ||
+ | |||
+ | A solution to this game development problem is an approach called [[https:// | ||
+ | Apparatus provides all of the basic ECS idioms and even more. To be unambiguous the framework it uses a different naming scheme as compared to classic ECS. Here is the list of analogous terms: | ||
+ | |||
+ | ^ ECS Term ^ Apparatus Term ^ | ||
+ | | Entity | ||
+ | | Component | ||
+ | | System | ||
+ | | A group of Systems | ||
+ | | Archetype | ||
+ | | Chunk | Belt | | ||
+ | |||
+ | ==== Built-in Subjects ==== | ||
+ | |||
+ | At a lower level, '' | ||
+ | |||
+ | * '' | ||
+ | * '' | ||
+ | * '' | ||
+ | |||
+ | Those should be sufficient for the most cases, but you can easily implement your own additional subject classes in C++. | ||
+ | |||
+ | ==== Built-in Mechanisms ==== | ||
+ | |||
+ | The '' | ||
+ | |||
+ | * '' | ||
+ | * '' | ||
+ | * '' | ||
+ | |||
+ | You would hardly ever need to implement your own mechanisms. Should you wish to, you can also do it in C++. |