Flecs - быстрая и легковесная ECS (Entity Component System), упакованная в небольшую библиотеку с C99 API без всяких зависимостей. В последнее время очень многие заинтересовались ECS, т.к. подобных подход может значительно ускорить/упростить разработку. Особенно Unity упорно продвигает DOTS с ECS. Кому-то может пригодится для своего движка на C++ подобная библиотека. Или же просто с академической точки зрения.В ECS (Entity Component System) код обычно куда производительней, чем при использовании традиционного ООП, и, как правило, его проще использовать повторно. Фреймворк являет собой ECS, если имеет:Сущности с уникальными идентификаторами (целыми числами).Компоненты, представляющие собой простые типы данных, которые могут быть добавлены к сущностям.Системы, которые являются функциями, сопоставляющие сущности с набором компонентов.Основное, что позволяет Flecs:Обрабатывать объекты в нескольких потоках с lock-free, zero-overhead архитектурой [подробнее].Организовывать компоненты и системы для многократного использования [подробнее].Периодически запускать системы покадрово, по требованию или по событиям [ подробнее].Есть и админка: Весь код библиотеки распространяется по MIT лицензии, дашборд по GPL v3. Подробную документацию можно найти тут, с кучей примеров.Так же есть куча демок, к примеру, игры Pong.github.comSanderMertens/flecsA Multithreaded Entity Component System written for C89 & C99 - SanderMertens/flecszen.yandex.ruFlecs - быстрая и легковесная ECSFlecs - быстрая и легковесная ECS (Entity Component System), упакованная в небольшую библиотеку с C99 API без всяких зависимостей.#ecs #EntityComponentSystem #cplusplus
дишборд это что то с кухни?
Делишсборд 👌
Flecs
Комментарий недоступен
Ничего странного. Кешфрендли обработка может быть в десятки, если не сотни раз быстрее ООП.
Комментарий недоступен
Комментарий недоступен