Flecs
Подробнее
- Создатель
- Сандер Мертенс
- Год
- 2019
- Тип
- Библиотека C/C++
- Лицензия
- MIT
- Сайт
- flecs.dev
ECS-фреймворк на архетипах, написанный на C, с API для C++; известен тем, что делает отношения между сущностями полноправными данными.
Сандер Мертенс опубликовал Flecs в 2019 году. Сущности с одинаковым набором компонентов хранятся вместе в таблице-архетипе, и обход остаётся дружелюбным к кэшу — в духе data-oriented design. Главная особенность — отношения: пара вроде (ChildOf, Ship) или (Likes, Bob) сама является компонентом, поэтому иерархии, инвентари и графы описываются и запрашиваются тем же механизмом, что и всё остальное.
Сверху надстроены язык запросов с переменными, планируемые системы, модули и веб-обозреватель, позволяющий заглянуть в работающий мир вживую. Ядро написано на C99, так что встроить его можно почти куда угодно. Flecs и EnTT — два имени, которые называют, стоит кому-нибудь попросить самостоятельный ECS для C++.