FLECS – Fast and Lightweight Entity Component System

FLECS is a cross platform open source C/C++ based entity component system (ECS) we covered all the way back in 2019. Written primarily in C99, FLECS is an ECS that should be easy to integrate into your own projects or into existing engines, such as Unreal Engine, where a minimal viable implementation is available (link below). Being C based makes creating bindings to other languages easy and as a result C#, Zig, Rust and Lua already exist.

Key Features of Flex include:

  • Store data for millions of entities in data structures optimized for CPU cache efficiency and composition-first design
  • Find entities for game systems with a high performance query engine that can run in time critical game loops
  • Run code using a multithreaded scheduler that seamlessly combines game systems from reusable modules
  • Builtin support for hierarchies, prefabs and more with entity relationships which speed up game code and reduce boiler plate
  • An ecosystem of tools to profile, visualize, document and debug projects

FLECS is a project under active development and recently released version 3.2 with several new features.

Key Links

FLECS Home

GitHub Repository

Language Bindings

3.2 Release Notes

Unreal Engine 5.1 Example

Discord Server

You can learn more about FLECS, the fast lightweight entity component system in the video below.

Scroll to Top