awesome-game-engine-dev
Awesome list of resources for Game Engine Development.
https://github.com/stevinz/awesome-game-engine-dev
Last synced: 9 days ago
JSON representation
-
Libraries
-
C++
- FlatBuffers - Efficient cross-platform serialization library by _Google_.
- JSON for Modern C++ - JSON support for Modern C++.
- Protobuf - Protocol Buffers, for platform-neutral serialized data by _Google_.
- Terra Forge 3D - Procedural 3D terrain generation and texturing tool.
- Any-Lite - Header-only 'any' type for C++98 and above.
- faker-cxx - C++20 Faker library for generating fake (but realistic) data for testing and development.
- Parallel Hashmap - Header-only, fast and memory-friendly hashmap and binary tree containers.
- Spdlog - Fast logging library.
- Tiny-Process-Library - Making it simple to create and stop new processes.
- TinyXML-2 - XML parser that can be easily integrated into other programs.
- NodeEditor - Graph-controlled data processing, built with _Qt_.
- QuickQanava - Display graphs and relational content in a _QtQuick_-based app, in C++14.
- Visual Script Engine - Visual scripting engine designed for embedding.
- Amplitude Audio SDK - Cross-platform audio engine designed for the needs of games.
- Steam Audio - Cross-platform spatial audio SDK for games and VR.
- Crystal Engine - Vulkan backend with PBR and styled GUI (_CrystalWidgets_).
- Ethereal Engine - Cross-platform game engine and editor.
- NVRHI - _NVIDIA_ abstraction layer over multiple graphics APIs.
- GTK - GIMP Toolkit, a multi-platform toolkit for creating guis.
- GameNetworkingSockets - Messages over UDP, P2P networking, encryption.
- yojimbo - Network library for client/server games.
- Newton Dynamics - Real-time simulation of 3D environments.
- RapidJSON - Fast JSON parser / generator.
- EASTL - Electronic Arts STL replacement, emphasis on performance.
- Learn C++ - Walks you through all the steps to write, compile, and debug C++.
- ODE - Open Dynamics Engine, 3D rigid body physics.
- cyCodeBase - Compact foundation library with math, geometry, image & graphics utilities.
- GTK - GIMP Toolkit, a multi-platform toolkit for creating guis.
- cppreference.com - Online reference for C, C++, and the STL.
- cppreference.com - Online reference for C, C++, and the STL.
- Any-Lite - Header-only 'any' type for C++98 and above.
-
Dart
- Awesome Dart - Curated list of awesome Dart frameworks, libraries, and software.
- image - Library for decoding / encoding image formats and image processing.
- Flame - Minimalist _Flutter_ based 2D game engine. [[Awesome](https://github.com/flame-engine/awesome-flame#readme) | [Examples](https://examples.flame-engine.org/#/) | [Website](https://flame-engine.org/)]
- Dart - Client-optimized language for fast apps on any platform. [[GitHub](https://github.com/dart-lang/)]
-
F#
- Awesome F# - Curated list of frameworks, libraries, software and resources.
- FSound - Sound processing library.
- Garnet - Game composition library with ECS and actor-like messaging features.
- Nu Game Engine - Cross-platform game engine built in the functional style.
- Fabulous - Declarative UI framework for cross-platform apps.
- F# - Functional-first language for .NET, prioritizing expressive code and parallelism.
-
Go
- Awesome Go - Awesome Go frameworks, libraries and software.
- Go - Statically typed, compiled programming language designed at _Google_. [[GitHub](https://github.com/golang)]
- Beep - Playback and audio-processing.
- G3N - OpenGL 3D game engine.
- Ebitengine - Dead simple 2D game library.
- Engo - A 2D game framework.
- Pixel - Hand-crafted 2D game library. [[Examples](https://github.com/faiface/pixel-examples)]
- 3D Mesh Simplification - 3D mesh simplification.
- ln - The 3D Line Art Engine, a vector-based 3D renderer. [[Docs](https://pkg.go.dev/github.com/fogleman/ln/ln)]
-
Haxe
- Awesome Haxe Game Dev - Awesome list of game dev resources for Haxe.
- Haxe Blog: Game Engine - "How I wrote my own 3D game engine and shipped a game in 20 months".
- Haxe Blog: OpenFL - "Flash is dead, long live OpenFL".
- HaxeLibs - List of every library uploaded to the Haxe website.
- HaxeTink - Various addon libraries for Haxe.
- Snowkit - Collective of Haxe developers.
- Awesome Haxe - Awesome curated list of useful Haxe links.
- Actuate - Flexible, fast tween library.
- DragonBones - Runtime support for _DragonBones_ skeletal animation.
- Spine-Hx - _Spine_ runtime for Haxe.
- nme - Cross-platform native backend for Haxe projects.
- Ecx - Entity component system framework for Haxe.
- GASM - Framework agnostic entity component system for Haxe.
- Armory - 3D game engine with full _Blender_ integration.
- Away3D - Real-time 3D engine for OpenFL. [[Website](http://away3d.com)]
- Flixel-Studio - Embeddable, in-game editor for _HaxeFlixel_.
- Hide - Extensible IDE for the _Heaps_ 3D graphic engine.
- LDtk - Modern, lightweight and efficient 2D level editor. [[Website](https://ldtk.io)]
- Starling - Popular (_Angry Birds_) 2D game engine built on _OpenFL_. [[Editor](http://starlingbuilder.github.io) | [Website](https://gamua.com/starling/)]
- Ceramic - Cross-platform 2D framework. [[Examples](https://ceramic-engine.com/examples/)]
- Citrus - ActionScript 3 based 2D/3D framework. [[Website](http://citrusengine.com/)]
- Clay - Cross-platform 2D game framework.
- gameBase - Base structure for Haxe games, using _Heaps_ graphics framework. [[Tutorial](https://deepnight.net/tutorial/using-my-gamebase-to-create-a-heaps-game/)]
- HaxeFlixel - Cross-platform 2D game framework powered by _OpenFL_. [[Website](https://haxeflixel.com/)]
- OpenFL - Open source implementation of the [Adobe Flash](https://en.wikipedia.org/wiki/Adobe_Flash) API. [[Website](https://www.openfl.org/)]
- Heaps - Cross-platform 2D/3D engine (by creators of Haxe). [[Website](https://heaps.io)]
- Kha - Ultra-portable, high-performance multimedia framework.
- Sparkler - Modular macro-powered particle system.
- HaxeUI - Cross-platform set of styleable gui components.
- Zui - Immediate mode user interface, used in _ArmorPaint_.
- Haxe Bullet - _Bullet 3D_ physics bindings for Haxe.
- HeapsIO/bullet - _Bullet 3D_ physics for _Heaps_ (Haxe's native low-level game framework).
- Jelly Physics - Soft body 2D physics engine.
- Nape - Fast, friendly 2D rigid body physics engine. [[Demos](https://joecreates.github.io/napephys/)]
- CastleDB - Structured database with a local web service to edit it.
- Format - Various files formats support for Haxe.
- HxBit - Binary serialization and network synchronization library.
- hexMachina - Powerful modular MVC framework. [[Website](http://hexmachina.org/)]
- HxColorToolkit - Library for color conversion and color scheme generation.
- HxMath - Game-oriented math library for the Haxe language.
- SteamWrap - Haxe native extension for the Steam API.
- Haxe-Blockly - Haxe wrapper for [Blockly](https://developers.google.com/blockly)
- Lime - Flexible, lightweight layer for Haxe cross-platform developers.
- HashLink - Virtual machine for Haxe.
- Clay - Cross-platform 2D game framework.
- Actuate - Flexible, fast tween library.
- Haxe Blog: Game Engine - "How I wrote my own 3D game engine and shipped a game in 20 months".
-
Java
- Awesome Java - Awesome frameworks, libraries and software for Java.
- Learn Java - Official docs and tutorials.
- OpenGL & GLSL Tutorials - OpenGL / GLSL tutorials for _LWJGL_ and _libGDX_.
- jMonkeyEngine - Modern 3D game development suite.
- libGDX - Game framework built on, and adds to _LWJGL_. [[Awesome](https://github.com/rafaskb/awesome-libgdx#readme) | [Website](https://libgdx.com/)]
- LWJGL - Graphics, audio, parallel computing, XR and more. [[Website](https://www.lwjgl.org/)]
- VisUI - A _libGDX_ UI toolkit.
-
JavaScript
- MDN - Mozilla Developer Network, excellent learning resource.
- W3 Schools - Learn to code with the world's largest web developer site.
- Electron - Cross-platform desktop apps with JavaScript, HTML, and CSS. [[Website](https://www.electronjs.org/)]
- NW.js - Desktop apps with JavaScript. Formerly _Node-Webkit_. [[Website](https://nwjs.io)]
- React Native - Framework for building native apps using React. [[Website](https://reactnative.dev/)]
- WebView2 - Microsoft Edge control allows you to embed web in native apps. [[Docs](https://docs.microsoft.com/en-us/microsoft-edge/webview2/)]
- JavaScript Game Engines - GitHub Collection of JavaScript / HTML5 game engines.
- JavaScript Wiki: Game Engines - JavaScript / HTML5 game engines and frameworks.
- Superpowers - Both 2D & 3D game making for indies. [[Website](http://superpowers-html5.com/index.en.html)]
- CanvasKit - WebAssembly build of _Google_'s 2D graphics library, Skia. [[Samples](https://skia.org/docs/user/modules/canvaskit/)]
- CopperLicht - A 3D library for WebGL. [[CopperCube Editor](https://ambiera.com/coppercube/index.html)]
- Filament for Web - WebAssembly build of Google's 3D graphics library, _Filament_.
- WebGL Frameworks - List of WebGL frameworks on Wikipedia.
- WebGL / WebGPU Frameworks - List of WebGL and WebGPU frameworks and libraries.
- SBcode Three.js Tutorials - Fantastic examples with code and explanations of topics.
- Three.js Bookshelf - Nice collection of resources.
- Three.js Discourse Examples - Yearly collection of all examples posted on the Three.js forum.
- Three.js Journey - Course teaching WebGL from beginner to advanced.
- Three.js Manual - Fantastic articles and explanations. Formerly _ThreeJsFundamentals_.
- Troika JS - Derived Material - Extend existing Three.js materials. [[Docs](https://protectwise.github.io/troika/troika-three-utils/createDerivedMaterial/)]
- Complete Guide to Flexbox - Comprehensive guide to CSS flexbox layout.
- Complete Guide to Grid - Comprehensive guide to CSS grid.
- WebRTC - Supports video, voice, and generic data to be sent between peers.
- Rapier - Rust 2D/3D physics libary focused on performance, ported as WebAssembly.
- Ultralight - Supports modern HTML5, CSS, and JavaScript. Based on _WebKit_.
- WebView2 - Microsoft Edge control allows you to embed web in native apps. [[Docs](https://docs.microsoft.com/en-us/microsoft-edge/webview2/)]
- Animate.css - Ready-to-use, pure CSS animations. [[Examples](https://animate.style/)]
- D3.js - Data-Driven Documents. Bring data to life with SVG, canvas and HTML. [[Examples](https://observablehq.com/@d3/gallery) | [Website](https://d3js.org)]
- GreenSock - Robust animation toolset. [[Website](https://greensock.com)]
- Ossos - Web-based character animation system.
- React-Spring - Spring physics based React animation library.
- Scene.js - JavaScript & CSS timeline-based animation library.
- Theatre - Motion design editor for the web.
- Tween.js - Tweening engine for easy animations using Robert Penner's equations.
- TweenJS - Tweening / animation library, part of the _CreateJS_ suite.
- Howler.js - Audio made easy and reliable across all platforms.
- PixiJS Sound - Audio library with filters, built on _PixiJS_. [[Examples](https://pixijs.io/sound/examples/)]
- SoundJS - Simple API and powerful features, part of the _CreateJS_ suite.
- Sonant-X - Small JavaScript synthesizer library. [[Online Composer](https://nicolas-van.github.io/sonant-x-live/)]
- SpessaSynth - MIDI player and synthesizer.
- Tone.js - WebAudio framework for creating interactive music in the browser.
- tuna - Audio effects library for the WebAudio API.
- Waveform Playlist - Multitrack web audio editor and player with canvas waveform preview.
- Chroma.js - Library for all kinds of color manipulations.
- Ejecta - JavaScript canvas & audio implementation for iOS. App store compatible.
- Tauri - Smaller, faster, and more secure desktop applications. [[Website](https://tauri.app/)]
- Window.js - JavaScript runtime for desktop graphics programming. [[Docs](https://windowjs.org/)]
- Dock Spawn TS - Maintained, TypeScript version of [Dock Spawn](https://github.com/coderespawn/dock-spawn), a JavaScript docking framework.
- FlexLayout - Multi-tab layout manager.
- Golden Layout - Multi-window layout manager for web apps.
- PhosphorJS - High-performance, pluggable, desktop-style web apps.
- React Mosaic - React tiling window manager.
- RC-Dock - Dock layout component for React.
- wcDocker - Window layout system with a responsive and interactive design.
- Becsy - Multithreaded ECS for TypeScript and JavaScript.
- bitECS - Functional, minimal, data-oriented, ultra-high performance ECS library.
- Ecsy - Experimental ECS aiming to be lightweight, easy to use.
- Miniplex - Entity management system for games.
- JSMpeg - MPEG1 Video Decoder in JavaScript.
- Alpine - Rugged, minimal framework for composing JavaScript behavior in your markup.
- Angular - The modern web developer's platform.
- Aurelia - Modern, front-end framework for browser, mobile, and desktop apps.
- Ember - Framework for ambitious web developers.
- Preact - Fast 3kB React alternative with the same modern API.
- Svelte - Takes your declarative components and converts them into efficient JavaScript.
- Vue - Progressive JavaScript framework for building UI on the web.
- Cocos Creator - Cross-Platform 2D/3D game creation. [[Website](https://www.cocos.com/en/creator)]
- ct.js - Desktop 2D game engine, built on _PixiJS_.
- Egret - Mobile game engine. [[Editor](https://github.com/egret-labs/egret-ui-editor-opensource)]
- GDevelop - Full-featured 2D game development. [[Website](https://gdevelop.io/)]
- Impact - Game engine for desktop and mobile browsers. [[2D Level Editor](https://impactjs.com/documentation/weltmeister)]
- Isogenic - Engine with advanced multiplayer, based on _Valve_'s multiplayer system.
- melonJS - Modern 2D game engine, level editing with [Tiled](https://doc.mapeditor.org/en/stable/). [[Website](https://melonjs.org)]
- microStudio - Online game engine. Learn and practice programming. [[Website](https://microstudio.dev/)]
- Pixelbox.js - Sandbox to fast-prototype 2D tile-based games. [[Download](https://pixwlk.itch.io/pixelbox)]
- QICI Engine - Toolset for making games.
- Taro - Multiplayer engine with _Box2D_ physics, aka _Moddio_. [[Website](https://www.modd.io)]
- Crafty - Create 2D games in a structured way.
- Excalibur - Friendly TypeScript 2D game engine for the web.
- Galacean - Web/Mobile-first engine built on WebGL and glTF.
- Kaboom - Simple 2D framework.
- LittleJS - Lightweight 2D framework with WebGL rendering.
- Meep - ECS game framework.
- Turbulenz - Modular 2D/3D game framework for browsers, desktops and mobile.
- WhitestormJS - Framework for 3D apps / games, built on _Three.js_.
- Convexhull.js - High-performance JavaScript 2D convex hull library.
- Delaunator - Incredibly fast JavaScript library for Delaunay triangulation of 2D points.
- Earcut - The fastest and smallest JavaScript polygon triangulation library for your WebGL apps.
- Poly-Decomp.js - Decompose 2D polygons into convex pieces.
- EaselJS - Makes working with the canvas element easy, part of [CreateJS](https://createjs.com/).
- Escher.js - Interactive 2D graphics canvas framework.
- Fabric.js - Powerful and simple JavaScript canvas library.
- Konva - Canvas interactivity framework for desktop and mobile apps.
- p5.js - Library for creative coding. [[Website](https://p5js.org)]
- Paper.js - The swiss army knife of vector graphics. [[Examples](http://paperjs.org/)]
- Pencil.js - Modular interactive 2D drawing library. [[Examples](https://pencil.js.org/)]
-
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