ECS: Why List Components?

This page summarizes the projects mentioned and recommended in the original post on /r/csharp

Our great sponsors
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • WorkOS - The modern identity platform for B2B SaaS
  • SaaSHub - Software Alternatives and Reviews
  • ecs-faq

    Frequently asked questions about Entity Component Systems

  • The best references I've found on the subject so far: * Adam Martin's blog - I remember this from awhile back. * Sander Mertens' ECS FAQ - Author of a well-known ECS library written in C

  • Svelto.ECS

    Svelto ECS C# Entity Component System

  • For existing libraries (which you can either choose to use, or choose to reference to look at how they implement ideas), maybe you can take a look at the following. I don't have experience with them, so I don't know how well they are implemented nor whether they strictly adhere to data-oriented design practices to get maximum performance, but it's not always strictly necessary to get the best performance out of everything unless you are writing a 3d AAA game with hundreds of thousands or even millions of entities: * Svelto.ECS - A C# ECS * FLECS - Written in C, but it also has a C# binding and it's a pretty well-regarded ECS implementation * ENTT - "Modern C++" ECS implementation * Bevy - a full game engine with a robust ECS implementation, written in Rust and quite modern.

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
  • bevy

    A refreshingly simple data-driven game engine built in Rust

  • For existing libraries (which you can either choose to use, or choose to reference to look at how they implement ideas), maybe you can take a look at the following. I don't have experience with them, so I don't know how well they are implemented nor whether they strictly adhere to data-oriented design practices to get maximum performance, but it's not always strictly necessary to get the best performance out of everything unless you are writing a 3d AAA game with hundreds of thousands or even millions of entities: * Svelto.ECS - A C# ECS * FLECS - Written in C, but it also has a C# binding and it's a pretty well-regarded ECS implementation * ENTT - "Modern C++" ECS implementation * Bevy - a full game engine with a robust ECS implementation, written in Rust and quite modern.

  • flecs

    A fast entity component system (ECS) for C & C++

  • For existing libraries (which you can either choose to use, or choose to reference to look at how they implement ideas), maybe you can take a look at the following. I don't have experience with them, so I don't know how well they are implemented nor whether they strictly adhere to data-oriented design practices to get maximum performance, but it's not always strictly necessary to get the best performance out of everything unless you are writing a 3d AAA game with hundreds of thousands or even millions of entities: * Svelto.ECS - A C# ECS * FLECS - Written in C, but it also has a C# binding and it's a pretty well-regarded ECS implementation * ENTT - "Modern C++" ECS implementation * Bevy - a full game engine with a robust ECS implementation, written in Rust and quite modern.

  • entt

    Gaming meets modern C++ - a fast and reliable entity component system (ECS) and much more

  • For existing libraries (which you can either choose to use, or choose to reference to look at how they implement ideas), maybe you can take a look at the following. I don't have experience with them, so I don't know how well they are implemented nor whether they strictly adhere to data-oriented design practices to get maximum performance, but it's not always strictly necessary to get the best performance out of everything unless you are writing a 3d AAA game with hundreds of thousands or even millions of entities: * Svelto.ECS - A C# ECS * FLECS - Written in C, but it also has a C# binding and it's a pretty well-regarded ECS implementation * ENTT - "Modern C++" ECS implementation * Bevy - a full game engine with a robust ECS implementation, written in Rust and quite modern.

  • WorkOS

    The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

    WorkOS logo
NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts