An open API service indexing awesome lists of open source software.

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.