Skip to content

jslee02/awesome-entity-component-system

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

68 Commits
 
 
 
 

Repository files navigation

awesome-ecs

😎 A curated list of Entity-Component-System (ECS) libraries and resources

ECS Libraries

C/C++

  • anax - Open source C++ entity system GitHub miguelmartin75/anax
  • ECS - C++ single-header entity component system library GitHub redxdev/ECS
  • ecs.hpp - A single header C++14 entity component system library GitHub BlackMATov/ecs.hpp
  • ecst - Experimental C++14 multithreaded compile-time entity-compnent-system library GitHub SuperV1234/ecst
  • EntityFu - A simple, fast entity component system written in C++ GitHub NatWeiss/EntityFu
  • EntityPlus - C++14 entity component system GitHub Yelnats321/EntityPlus
  • EntityX - Fast, type-safe C++ entity component system GitHub alecthomas/entityx
  • entt - Fast and reliable entity-component system GitHub skypjack/entt
  • Flecs - A Multithreaded Entity Component System written for C89 & C99 GitHub SanderMertens/flecs
  • Gaia-ECS - Fast and type-safe C++17 archetype-based entity component system GitHub richardbiely/gaia-ecs
  • Ginseng - An ESC library designed for use in games GitHub apples/ginseng
  • goomy - A tiny, experimental ECS framework GitHub vberlier/goomy
  • Kengine - Game engine with an Entity-Component-System (ECS) architecture GitHub phisko/kengine
  • matter - C++17/20 ECS implementation GitHub Dreyri/matter
  • mustache - A fast, modern C++ entity component system GitHub kirillochnev/mustache
  • pico_ecs - Single-header and cross-platform ECS GitHub empyreanx/pico_headers

C#

  • Arch - A high-performance Archetype & Chunks Entity Component System for game development and data-oriented programming GitHub genaray/Arch
  • DefaultEcs - ECS for syntax and usage simplicity with maximum performance GitHub Doraku/DefaultEcs
  • DragonECS - ECS for Unity and .NET GitHub DCFApixels/DragonECS
  • Entitas - The Entity Component System Framework for C# and Unity GitHub sschmid/Entitas
  • Frent - Data oriented ECF with an ECS api for C#, Godot, and Unity GitHub sschmid/Entitas
  • Friflo Engine ECS - ECS for .NET with focus on performance, cache locality and DX GitHub friflo/Friflo.Json.Fliox
  • LeoEcsLite - Lightweight C# Entity Component System framework GitHub LeoECSCommunity/ecslite
  • ME.BECS - ECS for Unity with full game state automatic rollbacks GitHub chromealex/ME.BECS
  • Morpeh - ECS Framework for Unity Game Engine and .NET Platform GitHub scellecs/morpeh
  • Svelto.ECS - Lightweight data oriented entity component system framework GitHub sebas77/Svelto.ECS
  • Fennecs - ... the tiny, tiny, high-energy Entity-Component System! GitHub outfox/fennecs
  • TinyEcs - A tiny bevy-like archetype-style ECS library for dotnet GitHub andreakarasho/TinyEcs

Common Lisp

  • beast - Basic Entity/Aspect/System Toolkit GitHub sjl/beast
  • cl-ecs - An implementation of the Entity-Component-System pattern mostly used in game development GitHub bit-phlippers/cl-ecs
  • cl-fast-ecs - Blazingly fast Entity-Component-System microframework GitLab lockie/cl-fast-ecs

Dart

  • Fast ECS - Simple and fast Entity-Component-System (ECS) library written in Dart. GitHub QiXi/fast_ecs

Elixir

  • ECSx - An ECS framework for Elixir GitHub ecsx-framework/ECSx

Python

  • esper - A lightweight Entity System for Python GitHub benmoran56/esper

Rust

  • shipyard - Entity Component System written in Rust GitHub leudz/shipyard
  • specs - Parallel entity component system written in Rust GitHub slide-rs/specs
  • legion - High performance Rust ECS library GitHub amethyst/legion
  • bevy_ecs - Simple to use, ergonomic, fast, massively parallel, opinionated, and featureful written in Rust GitHub bevyengine/bevy
  • hecs - High-performance, minimalist entity-component-system GitHub Ralith/hecs

Go

  • Arche - An archetype-based Entity Component System for Go GitHub mlange-42/arche
  • ecs - A Go-implementation of the Entity-Component-System paradigm GitHub EngoEngine/ecs

Lua

  • Concord - A feature-complete ECS library GitHub Keyslam-Group/Concord
  • ECS Lua - A fast and easy to use ECS engine for game development GitHub nidorx/ecs-lua
  • evolved.lua - Evolved ECS (Entity-Component-System) for Lua GitHub BlackMATov/evolved.lua
  • Nata - Entity management for Lua GitHub tesselode/nata
  • tiny-ecs - Entity Component System for Lua that's simple, flexible, and useful GitHub bakpakin/tiny-ecs

Java

  • Artemis-odb - A continuation of the popular Artemis ECS framework GitHub junkdog/artemis-odb

Kotlin

  • Fleks - Fast, lightweight, multi-platform entity component system in Kotlin GitHub Quillraven/Fleks

JavaScript / Typescript

  • becsy - A multithreaded Entity Component System (ECS) for TypeScript and JavaScript, inspired by ECSY and bitecs. GitHub bitecs
  • bitECS - Functional, minimal, data-oriented, ultra-high performance ECS library GitHub bitecs
  • ECSY - Entity Component System for javascript GitHub ecsyjs/ecsy
  • miniplex - The gentle game entity manager, focused on ease of use and developer experience. GitHub miniplex
  • Thyseus - An archetypal Entity Component System, built entirely in Typescript GitHub miniplex

Zig

  • mach-ecs - Entity Component System from first-principles designed for Zig GitHub hexops/mach-ecs
  • Zig ECS - A Zig port of the fantasic Entt GitHub prime31/zig-ecs

Haskell

  • apecs - A fast, extensible, type driven Haskell ECS framework for games GitHub jonascarpay/apecs

Applications powered by ECS

Game Engines

C++

  • crown - General purpose data-driven game engine GitHub dbartolini/crown
  • Engine - Basic cross-platform 3D game engine GitHub Shervanator/Engine
  • halley - A lightweight game engine written in modern C++ GitHub amzeratul/halley
  • igneous - Open source game engine written in C++ GitHub MissingBitStudios/igneous
  • kengine - Game engine focused on ease-of-use, runtime extensibility and compile-time type safety GitHub phisko/kengine
  • Lina Engine - Modular, tiny and fast C++ game engine, aimed to develop 3D desktop games GitHub inanevin/LinaEngine
  • Lumos - Cross-Platform C++ 2D/3D game engine GitHub jmorton06/Lumos
  • MxEngine - C++ open source 3D game engine GitHub asc-community/MxEngine
  • nebula - Open-source and free-to-use modern C++ game engine GitHub gscept/nebula
  • Nazara Engine - Cross-platform framework aimed at real-time applications requiring audio, 2D and 3D real-time rendering, network and more GitHub NazaraEngine/NazaraEngine
  • shiva - Modern Cross-Platform C++ Engine with modularity GitHub Milerius/shiva
  • Sparky - Cross-Platform High Performance 2D/3D game engine GitHub TheCherno/Sparky
  • supernova - Game engine for 2D and 3D projects with ECS and data-oriented design GitHub supernovaengine/supernova
  • Usagi - Hierarchical component entity system based game engine GitHub vitei/Usagi
  • Lumos - Cross-Platform C++ 2D/3D game engine GitHub jmorton06/Lumos
  • supernova - Game engine for 2D and 3D projects with ECS and data-oriented design GitHub supernovaengine/supernova
  • kengine - Game engine focused on ease-of-use, runtime extensibility and compile-time type safety GitHub phisko/kengine
  • MxEngine - C++ open source 3D game engine GitHub asc-community/MxEngine
  • nebula - Open-source and free-to-use modern C++ game engine GitHub gscept/nebula
  • halley - A lightweight game engine written in modern C++ GitHub amzeratul/halley
  • Nazara Engine - Cross-platform framework aimed at real-time applications requiring audio, 2D and 3D real-time rendering, network and more GitHub NazaraEngine/NazaraEngine
  • Lina Engine - Modular, tiny and fast C++ game engine, aimed to develop 3D desktop games GitHub inanevin/LinaEngine

Go

  • Engo - A cross-platform game engine written in Go following an interpretation of the Entity Component System paradigm GitHub EngoEngine/engo

Rust

  • Ambient - The multiplayer game engine GitHub dbartolini/crown
  • Amethyst - Data-oriented and data-driven game engine written in Rust GitHub amethyst/amethyst
  • Bevy - A refreshingly simple data-driven game engine built in Rust GitHub bevyengine/bevy
  • Bones - An easy-to-use game engine for making real games GitHub fishfolk/bones

Zig

  • mach - Game engine & graphics toolkit for building high-performance, truly cross-platform, robust & modular games, visualizations, and desktop/mobile GUI apps GitHub hexops/mach

Graphics Engines

C++

  • bs::framework - Modern C++14 library for the development of real-time graphical applications GitHub GameFoundry/bsf
  • The Forge - Cross-Platform Rendering Framework with support for PC Windows, Linux, Ray Tracing, macOS/iOS, Android, XBOX, PS4, PS5, Switch, Quest 2 GitHub ConfettiFX/The-Forge

Physics libraries

C++

  • edyn - A real-time physics engine organized as an ECS GitHub xissburg/edyn

Other Resources

Benchmarks

Blog Posts

Talks & Slides

Books

Tutorials

Lists

ETC

About

😎 A curated list of Entity-Component-System (ECS) libraries and resources

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy