awesome-game-engine-dev
Awesome list of resources for Game Engine Development.
https://github.com/stevinz/awesome-game-engine-dev
Last synced: 8 days ago
JSON representation
-
Libraries
-
C#
- Friflo.Engine.ECS - Archetype based ECS with focus on performance, cache locality and DX.
- ATF - Components for making tools on Windows, started in 2005.
- NAudio - Audio and MIDI library for .NET.
- Mono - Open source implementation of _Microsoft_'s .NET Framework.
- Arch - High-performance ECS with optional multithreading.
- DefaultEcs - ECS framework designed for game development.
- LeoECS - ECS framework powered by C# with optional integration to _Unity_.
- Duality - Modular 2D engine, editor built with _OpenTK_.
- Flat Red Ball - 2D game engine & design tools, built with _MonoGame_. [[Website](https://flatredball.com/)]
- Murder - Pixel-art, ECS game engine built on _MonoGame_. [[Docs](https://isadorasophia.com/murder/)]
- Stride - Game engine for realistic rendering and VR. Formerly _Xenko_. [[Website](https://www.stride3d.net/)]
- FNA - Reimplementation of the Microsoft XNA Game Studio 4.0 libraries.
- Monofoxe - Game engine designed to simplify working with _MonoGame_.
- MonoGame - Framework for creating cross-platform games. [[Website](https://www.monogame.net/)]
- Nez - Feature-rich 2D framework built on _MonoGame_.
- DotRecast - A port of _Recast & Detour_, navigation mesh toolset for games, Unity3D, servers, C#.
- OpenTK - Open Toolkit, C# bindings for OpenGL. [[LearnOpenTK](https://github.com/opentk/LearnOpenTK)]
- Avalonia - Cross-platform gui framework for .NET. [[Website](https://avaloniaui.net/)]
- GeonBit.UI - Gui for _MonoGame_ projects.
- MonoGame.Forms - _MonoGame_ render window for Windows Forms.
- Myra - Gui library for _MonoGame_, _FNA_, and _Stride_.
- Uno - Mobile, desktop and WebAssembly gui library. [[Website](https://platform.uno/)]
- Aether Physics - 2D physics library with continuous collision detection.
- Velcro Physics - C# port of Box2D. Formerly _Farseer Physics_.
- Facepunch.Steamworks - Steamworks implementation.
- Apos.Gui - UI library for _MonoGame_.
- MGUI - UI framework for the _MonoGame_ game framework.
- Squid - C# Realtime GUI System.
- Gum - Flexible layout tool for creating UI on any platform.
- Box2D.NET - A port of Box2D. 2D physics engine for games, .NET C#, Unity3D, servers.
- Monogame.Extended - Extensions to make _MonoGame_ more awesome.
- Protogame - Cross-platform 2D/3D game engine built on _MonoGame_.
- Veldrid - Cross-platform, graphics API-agnostic rendering and compute library for .NET.
- friflo ECS - High-performance C# ECS.
-
C++
- Awesome C++ - List of awesome C++ frameworks, libraries, and resources.
- C++ Papyrus - Basic to advanced topics with modern C++ examples.
- cppreference.com - Online reference for C, C++, and the STL.
- irrKlang - High level 2D/3D sound engine and audio library.
- Slug - High-quality, resolution-independent text and vector graphics for 3D apps.
- Irrlicht - Cross-platform 3D engine worked on for nearly 2 decades. [[Website](https://irrlicht.sourceforge.io/)]
- Geometric Tools - Mathematics, geometry, graphics, image analysis and physics in C++14.
- RamerDouglasPeucker - Reduces number of points along a 2D line.
- Trimesh2 - Utilities for input, output, and manipulation of 3D triangle meshes.
- GTK - GIMP Toolkit, a multi-platform toolkit for creating guis. [[Website](https://www.gtk.org)]
- List of C++ UI Libraries - List of C++ gui libraries, with pictures and descriptions.
- Qt - Industry standard gui library. [[Awesome](https://github.com/mikeroyal/Qt-Guide) | [Website](https://www.qt.io)]
- Oryol Input - Input module from the _Oryol_ game framework.
- Boost Libraries - Wide range of C++ libraries, many end up as part of the STL. [[Website](https://www.boost.org)]
- List of Open Source C++ Libraries - Comprehensive list of open source C++ libraries.
- NVIDIA GameWorks - _NVIDIA_ technologies for game & app developers.
- Octave - 3D game engine for GameCube, Wii, 3DS, and more.
- Awesome C++ Game Dev - List of awesome C++ things for Game Development.
- Awesome Hpp - List of awesome header-only C++ libraries.
- Modern Cpp Features - Cheatsheet of modern C++ language and library features.
- Cinder - App / graphics library for macOS, Windows, Linux, iOS. [[Website](https://libcinder.org)]
- Cross Window - Platform library for managing windows and other OS tasks.
- SFML - Cross-platform access to windowing, graphics, audio and networking.
- Ozz-Animation - Skeletal animation library and toolset.
- Tweeny - Inbetweening library for complex animations for games / apps.
- Amplitude Audio SDK - Cross-platform audio engine designed for the needs of games.
- Juce - The leading framework for multi-platform audio apps.
- OpenAL Soft - Software implementation of the _OpenAL_ 3D audio API.
- PortAudio - Cross-platform audio library.
- emscripten - The C/C++ to JavaScript (as WebAssembly) compiler. [[Website](https://emscripten.org/)]
- EntityX - Fast, type-safe C++ entity component system.
- Entt - Gaming meets modern C++, a fast and reliable entity component system.
- HarfBuzz - Text shaping library. Formatted and positioned glyph output.
- msdfgen - Multi-channel signed distance field generator.
- Slug - High-quality, resolution-independent text and vector graphics for 3D apps.
- Jpeg-Compressor - Single-file library that writes baseline JPEG compressed images.
- TinyDNG - Header-only DNG / TIFF loader and writer.
- TinyEXR - Tiny OpenEXR image loader / saver library.
- TinyGLTF - Header-only C++11 tiny glTF 2.0 library.
- TinyOBJLoader - Tiny but powerful single-file wavefront obj loader.
- Imgui-Filebrowser - Header-only file browser implementation for _Dear ImGui_ in C++17.
- AnKi 3D Engine - Vulkan backend, modern renderer, scripting, physics and more.
- Crown Engine - Data-driven 3D and 2D game engine.
- Crystal Engine - Vulkan backend with PBR and styled GUI (_CrystalWidgets_).
- Drop Creator - No code, 2.5D game engine built with _Qt_, OpenGL and _Chipmunk Physics_.
- Enigma - GameMaker compatible 2D engine.
- Esoterica Engine - High-performance game engine with editor and AAA quality animation graph.
- Ethereal Engine - Cross-platform game engine and editor.
- ezEngine - Game engine in active development.
- FIFE - Multi-platform isometric game engine.
- Limon Engine - 3D FPS game engine with full dynamic lighting and shadows.
- Lina Engine - Modular game engine, aimed to develop 3D desktop games.
- Lumos - Cross-platform 2D/3D game engine, supports both OpenGL and Vulkan.
- Lumix Engine - A 3D game engine with _Dear ImGui_ based editor.
- MxEngine - Modern-C++ general-purpose 3D game engine.
- neoGFX - Cross-platform app and game engine.
- ÖbEngine - 2D engine with Lua scripting built with _SFML_.
- Overload - Well documented 3D game engine inspired by industry standards.
- Razix Engine - High-performance research engine for production pipeline.
- Rootex - Advanced C++ 3D game engine powering an in-production game.
- Skylicht - Upgraded features including audio, physics and particles. Built on _Irrlicht_.
- Spartan Engine - Emphasis on quality and performance.
- Toolkit - Simple 2D/3D game and app develepment kit.
- Torque 3D - High-performance 3D engine built on _The Forge_.
- UPBGE - Blender game engine, originally forked from _Blender_.
- Acid - Modern C++17 and structured to be fast, simple, and modular.
- blah - Small 2D game framework.
- Cocos2d-x - Widely used in indie game dev community.
- Cute Framework - Simple and consise framework for making 2D games.
- Fireworks Engine - Lightweight OpenGL framework for quick prototyping.
- Halley - Modern C++17. Used for _Wargroove_, a strategy game on desktop and consoles.
- is::Engine - 2D framework built on _SDL2_ and _SFML_.
- JNGL - 2D framework. Develop anywhere, deploy everywhere.
- KlayGE - Cross-platform game framework with plugin-based architecture.
- Koala Engine - Framework with an ECS architecture, aka _Kengine_.
- Lumino - Framework for building real-time graphics apps.
- Nazara Engine - Custom shaders, ECS, 2D/3D, networking and more.
- nCine - Cross-platform 2D game framework.
- ORX - 2.5D data-driven game development framework.
- Oryol - Small, 3D, portable and extensible coding framework.
- Ouzel - Public domain, targeted for development of 2D games.
- Polycode - Cross-platform engine for creative code.
- Solar2D - Focus on ease of iterations and usage. Formerly _Corona_.
- Supernova - Cross-platform for 2D/3D projects.
- Thunder - Cross-platform 2D/3D with module architecture.
- Two - Toolkit for rapid development of live graphical apps and games.
- Urho3D - Cross-platform 2D/3D game framework.
- Valve Source SDK - The 2013 edition of the Source SDK by [Valve Software](https://www.valvesoftware.com/). [[Info](https://en.wikipedia.org/wiki/Source_(game_engine)) | [Wiki](https://developer.valvesoftware.com/wiki/Source_SDK_2013)]
- CinoLib - Header-only library for processing polygonal and polyhedral meshes.
- Delabella - Super stable 2D delaunay triangulation.
- Delaunator-Cpp - Really fast library for Delaunay triangulation of 2D points.
- Easy3D - Easy-to-use library for 3D modeling, geometry processing, and rendering.
- Extrude - Converts 2D images into 3D extruded meshes.
- Generator - Procedural geometry generation library for C++11.
- GeometronLib - Meshes for 3D shapes (cube, sphere, etc.) and ray / geometry intersection.
- Libigl - Simple geometry processing library.
- MeshOptimizer - Mesh optimization library that makes meshes smaller and faster to render.
- Polygon Mesh Processing Library - Processing / visualizing polygon surface meshes.
- PolyPartition - 2D polygon partitioning and triangulation.
- Recast & Detour - Navigation-mesh toolset for games.
- Seam-aware Decimater - Simplifies mesh while preserving UVs.
- Spheres - Four methods to create a sphere mesh.
- V-HACD - Decomposes a 3D surface into a set of "near" convex parts.
- Blend2D - High-performance 2D vector graphics engine. [[Website](https://blend2d.com/)]
- C++ Bitmap Library - Featured bitmap loading and manipulation library.
- QNanoPainter - OpenGL accelerated vector drawing library for _Qt_, powered by _NanoVG_.
- Skia - Complete 2D graphics library used in Chrome by _Google_. [[Website](https://skia.org)]
- vg-renderer - 2D vector graphics renderer for _Bgfx_, based on ideas from _NanoVG_.
- Bgfx - Cross-platform, graphics API agnostic, rendering library.
- Diligent Engine - Modern cross-platform graphics API abstraction library.
- Ember - Graphics framework using SDL2 and OpenGL.
- Filament - Mobile-first, real-time physically-based renderer by _Google_.
- Forge - Cross-platform rendering framework supporting all major platforms and consoles.
- Horde3D - 3D rendering and animation engine.
- Intermediate Graphics Library (IGL) - Cross-platform abstraction layer by _Facebook_.
- LLGL - Thin abstraction layer for OpenGL, Direct3D, Vulkan, and Metal.
- Magnum Engine - Modular C++11 graphics middleware for games and apps.
- Ogre - Scene-oriented, flexible 3D engine.
- OSRE - Just another "Open Source Render Engine".
- StratusGFX - Realtime 3D rendering engine implementing modern graphics techniques.
- Threepp - Cross-platform C++17 port of the popular 3D JavaScript library _Three.js_ (r129).
- Tungsten - High-performance physically-based renderer in C++11.
- Wicked Engine - Engine focusing on performance & modern rendering techniques.
- Crazy Eddie's GUI - Versatile, multi-platform gui library.
- Dear ImGui - Bloat-free immediate mode gui library. Ported to many other languages.
- FLTK - Fast Light Toolkit, cross-platform gui. [[Website](https://www.fltk.org/)]
- GuiLite - Header-only, cross-platform gui library.
- Litehtml - Lightweight HTML / CSS rendering engine.
- Nana - Cross-platform gui library in modern C++.
- Portable File Dialogs - Single-header C++11 native dialogs on Windows, macOS, and Linux.
- RmlUi - Turns HTML / CSS source files into vertices and draw commands. [[Docs](https://mikke89.github.io/RmlUiDoc/)]
- Turbo Badger - Gui library for hardware accelerated apps & games. [[Oryol Example](https://floooh.github.io/oryol-samples/wasm/TurboBadgerDemo.html)]
- Wt - Web gui library in modern C++. [[Website](https://www.webtoolkit.eu/wt)]
- wxWidgets - Cross-platform gui using native controls. [[Website](https://wxwidgets.org)]
- Gainput - Easy to use input library.
- OIS - Object-oriented input system. Compatiable with many operating systems.
- Yoga - Cross-platform [flexbox](https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Flexible_Box_Layout/Basic_Concepts_of_Flexbox) layout engine by _Facebook_. [[Website](https://yogalayout.com/)]
- Gamedev Libraries - Collection of open source C/C++ libraries for game development.
- Thekla Atlas - Atlas generation tool.
- UVAtlas - DirectX library for creating and packing texture atlases.
- OpenGL Mathematics - Header-only math library for graphics software.
- Cpp-HttpLib - Single-header file HTTP server and client library in C++11.
- Box2D - Battle tested 2D physics for games. [[Docs](https://box2d.org/documentation/) | [Fixed Time-Step](https://www.unagames.com/blog/daniele/2010/06/fixed-time-step-implementation-box2d) | [Tutorials](http://www.iforce2d.net/b2dtut/introduction)]
- Bullet Physics - Popular 3D physics libary.
- Chrono - High-performance multiphysics and multibody dynamics simulations. [[Gallery](https://projectchrono.org/gallery/)]
- Edyn - Multi-threaded, networked physics engine. Supports large dynamic worlds. [[Testbed](https://github.com/xissburg/edyn-testbed)]
- Jolt Physics - Multi-core friendly rigid body 3D physics and collision detection.
- Liquid Fun - Extension of _Box2D_, adds particle-based fluid and soft bodies. [[Demos](http://google.github.io/liquidfun/)]
- Newton Dynamics - Real-time simulation of 3D environments.
- Qu3e - Fast 3D physics engine, created to be used in games.
- ReactPhysics3D - 3D physics engine.
- Slingshot - Constraint-based physics engine for 3D rigid body dynamics.
- Boost.PFR - Basic reflection C++14 library, part of the Boost Libraries.
- Magic Enum - Header-only C++17, provides static reflection for enums.
- Meta - Header-only, non-intrusive and macro-free runtime reflection system in C++17.
- Nameof - Header-only C++17, provides nameof macros to obtain name of a variable.
- Ponder - Expose C++17 classes and objects so they can used as data.
- Reflect - Small, flexible, single-header library for runtime reflection and meta data in C++11.
- RTTR - Reflection for C++11.
- ArkScript - Small, fast, functional and scripting language.
- ChaiScript - Embedded scripting language designed from to directly target C++17.
- GameMonkey Script - Embedded scripting language for apps, tools and games.
- v8 - High-performance JavaScript and WebAssembly engine by _Google_.
- Cap'n Proto - Fast data interchange format and capability-based RPC system.
- Cereal - Header-only C++11 serialization library.
- Cista++ - Simple, high-performance serialization & reflection library.
-
Programming Languages
Categories
Sub Categories
C++
204
JavaScript
197
C
77
Haxe
47
Computer Graphics
44
Shaders
37
C#
36
Physics
24
Commercial
20
Rust
20
Lighting / Shadows
17
Geometry
13
Materials / Textures
13
Audio Tools
12
Zig
12
AAA
12
Generative Art
11
Specialty
11
Audio Assets
9
Signed Distance Fields
9
Game Development
9
Go
9
Python
9
Engine Development
8
Java
8
Model Assets
7
Modeling Tools
7
Ruby
7
Pascal
7
Fluid / Smoke
6
Kotlin
6
Programming
6
Voxel
6
Color / Palettes
6
Pixel Art
6
Lua
6
F#
6
Graphic Assets
5
BASIC
5
Scripting
5
Entity Component Systems
5
Dart
4
Color Manipulation
4
Tiling
4
Transparency
4
Vector Editors
3
Animation Software
3
AI Assistants
3
Awesome Collections
3
Popular
3
2D Game Dev
3
Particles
2
Rendering
2
Animation Info
2
Particle Tools
2
AI / Pathfinding
2
Level Editors
2
Graphical User Interface
1
Network
1
Material Assets
1
Hair
1
Keywords
game-engine
99
gamedev
92
game-development
89
javascript
60
cpp
54
opengl
53
3d
44
game
41
cross-platform
38
c-plus-plus
35
webgl
35
graphics
32
c
31
windows
28
android
28
linux
28
engine
27
vulkan
27
gui
27
threejs
21
2d
20
python
19
macos
19
typescript
19
ios
19
3d-graphics
18
react
18
lua
17
imgui
17
rust
17
cpp17
17
animation
16
rendering
16
haxe
16
ecs
16
audio
16
open-source
15
ui
15
csharp
15
entity-component-system
14
header-only
14
monogame
13
awesome-list
13
physics
13
wasm
13
3d-engine
12
awesome
12
directx
11
reflection
11
framework
11