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

  •        241

Consider it a work in progress. The whole API is also fully documented in-code for those who are brave enough to read it. Currently, EnTT is tested on Linux, Microsoft Windows and OS X. It has proven to work also on both Android and iOS. Most likely it will not be problematic on other systems as well, but has not been sufficiently tested so far.

https://github.com/skypjack/entt

Tags
Implementation
License
Platform

   




Related Projects

Entitas-CSharp - Entitas is a super fast Entity Component System (ECS) Framework specifically made for C# and Unity

  •    CSharp

Entitas is a super fast Entity Component System Framework (ECS) specifically made for C# and Unity. Internal caching and blazing fast component access makes it second to none. Several design decisions have been made to work optimal in a garbage collected environment and to go easy on the garbage collector. Entitas comes with an optional code generator which radically reduces the amount of code you have to write and makes your code read like well written prose. The optional code generator lets you write code that is super fast, safe and literally screams its intent.

Glide - Game engine for making 2d games on iOS, macOS and tvOS, with practical examples and tutorials

  •    Swift

glide is a SpriteKit and GameplayKit based engine for building 2d games easily, with a focus on side scrollers. glide is developed with Swift and works on iOS, macOS and tvOS. glide is developed with Entity-Component-System architecture. In short, this makes it easy to manage the code of your game, which might quickly get messy as you add more stuff. In addition to that, loads of building components common to 2d platformers that will get you quickly started is also included in the engine.

ecst - [WIP] Experimental C++14 multithreaded compile-time entity-component-system library.

  •    C++

Experimental & work-in-progress C++14 multithreaded compile-time Entity-Component-System header-only library. Successful development of complex real-time applications and games requires a flexible and efficient entity management system. As a project becomes more intricate, it’s critical to find an elegant way to compose objects in order to prevent code repetition, improve modularity and open up powerful optimization possibilities.

WickedEngine - C++ game engine focusing on modern rendering techniques.

  •    C++

Wicked Engine is an open-source game engine written in C++. The main focus is to be easy to set up and use, light weight, high performance, and graphically advanced. The full source code is provided with the MIT license, which means, anyone is free to use it for anything without additional considerations. The code shall not contain any parts with other licensing. The code is hosted on GitHub: https://github.com/turanszkij/WickedEngine For any questions, please open an issue there. From version 0.21.0 onwards, the engine was changed to use Entity-Component System and the old Object-Oriented system was dropped. It is not backwards-compatible, so assets/scripts made with the old system are unfortunately not usable. You can find a snapshot of the old Object-Oriented codebase (0.20.6) here, but it will not be updated anymore.


kivent - KivEnt is an entity-based game engine for Kivy

  •    Python

KivEnt is a framework for building performant, dynamic real-time scenes in Kivy for Python2 and Python3. At the moment it is 2d oriented. The only dependency for the kivent_core module is Kivy itself. Additional modules may have other requirements, such as kivent_cymunk module being based on Chipmunk2d and its cymunk wrapper. An entity-component architecture is used to control game object state and the logic of processing the game objects. This means that your game objects will be made up of collections of independent components that stricly hold data; each component corresponds to a GameSystem that will perform all data processing on the components, in the update loop each frame, and as a result of user interaction or other programmaticaly generated events. All memory for the built-in components is allocated statically: if you would like learn more about memory management, read here.

GDevelop - :video_game: GDevelop is an open source HTML5 and native game creator requiring no coding skills

  •    C++

GDevelop is a full featured, open source game development software, allowing to create HTML5 and native games without any knowledge in a specific programming language. All the game logic is made thanks to an intuitive and powerful event based system. A pre-generated documentation of the Core library, C++ and JS game engines is available here.

rang - A Minimal, Header only Modern c++ library for terminal goodies 💄✨

  •    C++

rang only depends on C++ standard library, unistd.h system header on unix and windows.h & io.h system headers on windows based systems. In other words, you don't need any 3rd party dependencies. rang is a single header-only library. Put rang.hpp in the include folder directly into the project source tree or somewhere reachable from your project.

chocolatier - WIP ClojureScript game/engine using Pixi.js for rendering.

  •    Clojure

A work-in-progress web game engine for repl driven game development written in ClojureScript using Pixi.js as a rendering engine. Here's the working example game that includes tilesets, collision detection, animation, sprites, and user input.

BansheeEngine - Modern C++14 game engine with Vulkan support, fully featured editor and C# scripting

  •    CSharp

Banshee is a high-quality and modern game development toolkit. It provides a high-performance, multi-threaded game engine written in C++14. The engine includes math and utility libraries, Vulkan, DirectX 11 and OpenGL support, handles common tasks such as input, GUI, physics, audio, animation and scripting, and supports many popular resource formats (e.g. FBX, PNG, PSD, TTF, OGG, WAV).

GDevelop - HTML5 and native game creator requiring no coding skills

  •    C++

GDevelop is a full featured, open source game development software, allowing to create HTML5 and native games without any knowledge in a specific programming language. All the game logic is made thanks to an intuitive and powerful event based system.

duality - a 2D Game Development Framework

  •    CSharp

Duality is a plugin based 2D game development framework based on C# and OpenTK. To get a quick overview, please visit the project page. For documentation, take a look at the Wiki.If you have questions or just want to say Hi, feel free to join us in the forum or our chat. Also, feedback is always welcome! Bugs and feature requests that do not require further discussion, however, should be filed in the issue tracking system, directly here on github.

evennia - Python MUD/MUX/MUSH/MU* development system

  •    Python

Evennia is a modern library for creating online multiplayer text games (MUD, MUSH, MUX, MUCK, MOO etc) in pure Python. It allows game creators to design and flesh out their ideas with great freedom. Evennia is made available under the very friendly BSD license. http://www.evennia.com is the main hub tracking all things Evennia.

LambdaHack - Haskell game engine library for roguelike dungeon crawlers; try out the browser version at

  •    Haskell

As an example of the engine's capabilities, here is a showcase of shooting down explosive projectiles. A couple were shot down close enough to enemies to harm them. Others exploded closer to our party members and took out of the air the projectiles that would otherwise harm them. This was a semi-automatic stealthy speedrun of the escape scenario of the sample game that comes with the engine. Small fixed font. The enemy gang has a huge numerical and equipment superiority. Our team loots the area on auto-pilot until the first foe is spotted. Then they scout out enemy positions. Then hero 1 draws enemies and unfortunately enemy fire as well, which is when he valiantly shoots down explosives to avoid the worst damage. Then heroine 2 sneaks behind enemy lines to reach the remaining treasure. That accomplished, the captain signals retreat and leaves for the next area (the zoo).

pyxel - A retro game development environment in Python

  •    Python

Pyxel is a retro game development environment in Python. Thanks to its simple specifications inspired by retro gaming consoles, such as only 16 colors can be displayed and only 4 sounds can be played back at the same time, you can feel free to enjoy making pixel art style games.

EntityJS - Entity-component javascript game engine

  •    Javascript

Entity-component javascript game engine