awesome-game-engine-dev
Awesome list of resources for Game Engine Development.
https://github.com/stevinz/awesome-game-engine-dev
Last synced: 17 days ago
JSON representation
-
Libraries
-
JavaScript
- 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/)]
- PixiJS - Fast, lightweight 2D library. [[Awesome](https://github.com/cursedcoder/awesome-pixijs) | [Editor](https://github.com/Megabyteceer/thing-editor) | [Essentials](https://github.com/ShukantPal/pixi-essentials) | [Website](https://pixijs.com/)]
- Pts - Library for visualization and creative coding. [[Examples](https://ptsjs.org)]
- Scrawl-canvas - Library for working with the canvas element.
- Stage.js - 2D rendering engine for game development. [[Examples](https://piqnt.com/stage.js/)]
- Two.js - Renderer agnostic 2D drawing API for the web.
- ZIM - Creative canvas framework. [[Website](https://zimjs.com/)]
- Babylon.js - Powerful web rendering engine. [[Extensions](https://github.com/BabylonJS/Extensions) | [Website](https://www.babylonjs.com/)]
- ClayGL - WebGL library for scalable Web3D applications.
- Four - Minimal three.js alternative.
- Hilo3d - WebGL 3D rendering engine by _Alibaba_.
- Litescene.js - WebGL 3D engine library, used by WebGLStudio.
- LUME - Simplifies the creation of interactive 2D/3D experiences.
- OGL - Fast, powerful, minimal WebGL library. [[Examples](https://oframe.github.io/ogl/examples)]
- PicoGL.js - Minimal WebGL 2 rendering library. [[Examples](https://tsherif.github.io/picogl.js/)]
- Pixi3D - 3D renderer for _PixiJS_, seamless integration with 2D apps. [[Examples](https://pixi3d.org/)]
- RedGL - JavaScript 3D WebGL library.
- Regl - Fast functional WebGL.
- SwissGL - Minimalistic wrapper on top of WebGL2.
- ThingJS - Lightweight, extendable 3D library, aka _t3d_.
- TWGL - Tiny WebGL helper Library. [[Examples](http://twgljs.org/)]
- x3dom - Integrate 3D content seamlessly into your webpage.
- Sketch Three.js - Interactive sketches made with Three.js.
- Sketchbook - 3D playground built on Three.js and Cannon.js.
- Stemkoski Three.js Examples - Excellent set of instructive examples.
- THREEx - Nice collection of open source game extensions.
- Custom Shader Material - Extend Three.js materials with your own shaders.
- irregular-grid - Examples of generating and using irregular grids. [[Demos](https://sketchpunklabs.github.io/irregular_grid/)]
- Lamina - Extensible, layered shader material for Three.js.
- screen-space-reflections - Screen space reflections in Three.js.
- three-billboard-reflection - Performant plane reflections in Three.js.
- three-mesh-bvh - Speed up raycasting and enable spatial queries on Meshes.
- three-mesh-ui - VR user interfaces for Three.js.
- three-nebula - WebGL particle system for Three.js. [[Examples](https://three-nebula.org/examples/custom-renderer)]
- three-projected-material - Texture projection in Three.js.
- three.ik - Inverse kinematics for Three.js.
- voxelizer - Voxelization of 3D models.
- drei - Useful helpers for react-three-fiber.
- gltfjsx - Turns GLTFs into JSX components.
- react-three-fiber - React renderer for Three.js.
- Threlte - 3D framework and ecosystem for Svelte and Three.js. [[Website](https://threlte.xyz/)]
- Bootstrap - Popular. Develop responsive, mobile first projects. [[Website](https://getbootstrap.com/)]
- dat.GUI - Lightweight gui for changing variables in JavaScript.
- Dojo - Gui widgets for web apps.
- Guify - Simple gui for changing JavaScript variables. [[Demo](https://jons.website/projects/guify/)]
- GuiGui - Gui for tweaking stuff in JavaScript. [[Demo](https://superguigui.github.io/guigui/)]
- Inferno - React-like library for building high-performance user interfaces.
- jQuery UI - The official gui library for jQuery.
- Leva - React-first components gui.
- Magic Circle - Multi-functional gui. Inspired by _dat.GUI_, _Unity_ and _Framer_.
- PCUI - UI component library for the web by _PlayCanvas_.
- Tweakpane - Compact gui for fine-tuning values.
- uil - Simple JavaScript gui.
- w2ui - Gui widgets for modern web apps.
- Zebkit - Canvas rendered UI component libary.
- Joycon.js - JavaScript controller functionality.
- Mesekai - Real-time motion tracking.
- use-gesture - Utility for mouse / touch gestures in React and JavaScript.
- WebAR.rocks.faceDepth - Insert your face from your camera into a 3D scene.
- Socket.io - Enables real-time bidirectional event-based communication.
- Ammo.js - _Bullet 3D_ Physics engine ported as WebAssembly.
- Cannon-es - Maintained fork of [Cannon.js](https://github.com/schteppe/cannon.js) 3D physics engine. [[Demos](https://pmndrs.github.io/cannon-es/)]
- Goblin Physics - 3D physics engine written from the ground up in JavaScript. [[Demos](http://www.goblinphysics.com/)]
- JoltPhysics.js - Port of _Jolt Physics_ to JavaScript (as WebAssembly). [[Demos](https://jrouwe.github.io/JoltPhysics.js/)]
- Matter.js - Featured 2D physics engine for the web. [[Demos](https://brm.io/matter-js/)]
- Oimo.js - Lightweight 3D physics engine. [[Demos](http://lo-th.github.io/Oimo.js)]
- p2.js - 2D rigid body physics, by the creator of Cannon.js.
- Physijs - Physics plugin for Three.js
- Verly.js - Easy to integrate verlet physics engine. [[Demos](https://anuraghazra.dev/Verly.js/)]
- Clipboard.js - Small, modern copy to clipboard.
- Day.js - Fast 2kB alternative to [Moment.js](https://github.com/moment/moment) with the same modern API.
- i18next - Popular internationalization framework.
- jQuery - Fast and feature-rich JavaScript library. [[Website](https://jquery.com)]
- PreloadJS - Preloading assets w/progress events.
- Struct Vec - JavaScript array-like containers for multithreading.
- Neo - Timeline for JavaScript. [[Demo](http://lo-th.github.io/neo/)]
- Remotion - Create videos programmatically in React. [[Website](https://www.remotion.dev/)]
- Butterfly - Diagramming library concentrated on flow and field layout by _Alibaba_.
- Drawflow - Simple JavaScript flow library. [[Demo](https://jerosoler.github.io/Drawflow/)]
- Flow - Node-graph library.
- Litegraph.js - Create graphs in the browser similar to _Unreal Blueprints_. [[Demo](https://tamats.com/projects/litegraph/editor/)]
- Node-RED - Low-code programming for event-driven applications.
- Nodl - Framework for computational node graphs.
- Rete.js - Framework for visual programming and node editors. [[Demo](https://rete.js.org/#/examples/basic)]
- Capacitor - Run web apps natively on iOS, Android, Web, and more. [[Website](https://capacitorjs.com/)]
- Electron Alternatives - Cross-platform gui app development options.
- nx.js - JavaScript runtime for Nintendo Switch homebrew applications.
- React - Declarative, efficient, and flexible JavaScript library for building user interfaces.
- A-Frame - Web framework for building VR experiences. [[Website](https://aframe.io)]
- Cocos Creator - Cross-Platform 2D/3D game creation. [[Website](https://www.cocos.com/en/creator)]
- microStudio - Online game engine. Learn and practice programming.
- Oasis - WebGL framework by _AntGroup_. 2D/3D, animation, physics.
- Three.js - General-purpose 3D library. [[Awesome](https://github.com/0xAxiome/awesome-threejs) | [Docs](https://threejs.org) | [Editor](https://threejs.org/editor/) | [Examples](https://threejs.org/examples/)]
- WebGL / WebGPU Frameworks - List of WebGL and WebGPU frameworks and libraries.
- Discover Three.js - Create stunning 3D web apps using Three.js.
- Stemkoski Three.js Examples - Excellent set of instructive examples.
- Troika JS - Derived Material - Extend existing Three.js materials. [[Docs](https://protectwise.github.io/troika/troika-three-utils/createDerivedMaterial/)]
- Joycon.js - JavaScript controller functionality.
- Box2d.js - Box2D to ported as WebAssembly.
- Particulate.js - Particle physics library designed to be simple, fast and stable.
- Frame.js - JavaScript sequence editor.
- Phaser - Fast 2D game framework. [[Website](https://phaser.io)]
- Awesome JavaScript - Collection of browser-side JavaScript libraries and resources.
- WebView2 - Microsoft Edge control allows you to embed web in native apps. [[Docs](https://learn.microsoft.com/en-us/microsoft-edge/webview2/)]
- Infinite Reality Engine - 3D toolkit for the social spatial web. Formerly _Ethereal Engine_.
- Rapier - Rust 2D/3D physics libary focused on performance, ported as WebAssembly.
-
Kotlin
- Kotlin - General-purpose language, interoperates with Java. [[GitHub](https://github.com/JetBrains/kotlin)]
- KorGE - Multi-platform 2D game engine for Kotlin. [[Website](https://korge.org/)]
- FXGL - Game library for 2D, experimental 3D.
- KTX - Kotlin extensions for the _libGDX_ game framework.
- Awesome Kotlin - List of awesome Kotlin related stuff.
- Kool - Multi-platform 3D Vulkan / OpenGL graphics engine. [[Examples](https://fabmax.github.io/kool/kool-js/)]
-
Lua
- Awesome Lua - Awesome Lua packages and resources.
- 3DreamEngine - 3D engine on top of _LÖVE_.
- Gideros - 2D/3D cross-platform games with Lua. [[Website](http://giderosmobile.com/)]
- INSTEAD - Simple Text Adventure Interpreter.
- LÖVE - 2D framework for writing game code with Lua. [[Awesome](https://github.com/love2d-community/awesome-love2d) | [Website](https://love2d.org)]
- Vectarine - A cross-platform game engine for fast prototyping with Lua and Luau [[Website](http://vectarine.surge.sh/)]
-
Pascal
- Awesome Pascal - Curated list of Delphi / Pascal resources.
- Delphi - Pascal dialect and popular IDE with cross-platform support.
- Free Pascal - Mature, open source Pascal compiler.
- Pascal Tutorials - Simple and easy Pascal tutorials.
- Castle - Cross-platform 2D/3D game engine and editor. [[Website](https://castle-engine.io/)]
- Apus - Cross-platform library for making 2D games.
- Kraft - Object Pascal 3D physics engine.
-
Python
- Awesome Python - List of awesome Python frameworks, libraries, software and more.
- Anvil - Full stack web apps with nothing but Python.
- Pyglet - Windowing and multimedia library intended for game development.
- Brython - Python 3 running in the browser.
- Arcade - Easy to use library for creating 2D arcade games.
- Panda3D - Powerful, mature game engine developed by _Disney_ and _Carnegie Mellon_. [[Website](https://www.panda3d.org)]
- Pygame - Game & multimedia app framework, built on _SDL_.
- Pygcurse - [Curses-like](https://en.wikipedia.org/wiki/Curses_%28programming_library%29) library for text adventures / roguelikes. [[Website](http://inventwithpython.com/pygcurse/)]
- Kivy - Cross-platform gui framework. [[Website](https://kivy.org/)]
- Cave Engine - Fast and easy Python game engine for 3D.
- ursina - Game engine powered by Python and _Panda3D_.
- CustomTkinter - Modern, customizable UI-library based on _Tkinter_.
- NiceGUI - Create web-based user interfaces with Python.
- PySide - Official Python bindings for _Qt_.
- PyQt - Python bindings for _Qt_.
- tkinter - Standard Python interface to the Tcl/Tk GUI toolkit.
-
Ruby
- Awesome Ruby - Collection of awesome Ruby libraries, tools, frameworks and software.
- Ruby - Dynamic programming language, focused on simplicity / productivity. [[GitHub](https://github.com/ruby/ruby)]
- Ruby on Rails - Web app framework. [[Website](https://rubyonrails.org)]
- Ruby 2D - Make cross-platform 2D apps.
- Mittsu - 3D graphics library based heavily on _Three.js_.
- Glimmer - Gui library and DSL (domain specific language) framework.
- Shoes - Cross-platform gui library. [[Website](http://shoesrb.com/)]
-
Rust
- Awesome Rust - Curated list of Rust code and resources.
- Makepad - Software development platform and native-rendering gui framework. [[Editor](https://makepad.dev/)]
- Tao - Cross-platform windowing. [[Docs](https://docs.rs/tao/latest/tao/)]
- Kira - Create expressive audio for games.
- Fyrox - 2D/3D game engine with editor. Formerly _Rg3d_. [[Website](https://fyrox.rs/)]
- Ambient - Multiplayer game engine.
- Amethyst - Data-driven 2D/3D game engine aiming to be fast and configurable.
- Bevy - Refreshingly simple data-driven 2D/3D game engine. [[Website](https://bevyengine.org)]
- Macroquad - Easy to use game library, heavily inspired by _RayLib_.
- Ash - Vulkan bindgins for Rust.
- Glium - Safe wrapper arount the OpenGL API.
- Kiss3D - Keep it simple, stupid 3D graphics engine.
- Miniquad - Cross-platform rendering.
- Vulkano - Safe and rich wrapper around the Vulkan API.
- Azul - Desktop gui framework.
- Dioxus - Cross-platform, React-like gui library.
- Druid - Data-first gui design toolkit.
- egui - Easy to use immediate mode gui. Runs on web and native. [[Demo](https://www.egui.rs/)]
- Slint - Gui toolkit for embedded / desktop. Formerly _SixtyFPS_. [[Website](https://slint-ui.com/)]
- Rapier - 2D/3D physics engines focused on performance. [[Docs](https://rapier.rs)]
- wgpu - Cross-platform graphics API, powers WebGPU in _Firefox_.
-
Zig
- Zig - General-purpose language and toolchain. [[Docs](https://ziglang.org/documentation/master/) | [GitHub](https://github.com/michal-z/zig)]
- Zig Learn - Excellent Zig language resource.
- Awesome Zig - Curated list of Zig code and resources.
- Ziglings - Learn the Zig programming language by fixing tiny broken programs.
- Upaya - Framework for creating game tools and helper apps.
-
Programming Languages
Categories
Sub Categories
C++
211
JavaScript
201
C
80
Haxe
48
Computer Graphics
46
C#
43
Shaders
38
Physics
27
Commercial
22
Rust
21
Lighting / Shadows
18
Python
16
Materials / Textures
15
Audio Tools
14
Geometry
13
AAA
13
Zig
12
Specialty
12
Generative Art
11
Game Development
10
Pixel Art
10
Audio Assets
9
Java
9
Signed Distance Fields
9
Engine Development
9
Go
9
Awesome Collections
8
Model Assets
7
Modeling Tools
7
Pascal
7
Entity Component Systems
7
Ruby
7
Fluid / Smoke
6
Lua
6
BASIC
6
Kotlin
6
Color / Palettes
6
Voxel
6
Programming
6
Tiling
5
Scripting
5
Graphic Assets
5
F#
5
Dart
4
Color Manipulation
4
Transparency
4
Level Editors
4
Debugging / Profiling
4
Vector Editors
3
Popular
3
AI Assistants
3
Animation Software
3
Asset Pipeline / Formats
3
Particle Tools
3
Animation Info
2
Enemies / Pathfinding
2
Rendering
2
Tilemap Editors
2
Particles
2
AI / Pathfinding
1
Graphical User Interface
1
2D Game Dev
1
Hair
1
Material Assets
1
Network
1
Keywords
game-engine
100
gamedev
94
game-development
92
javascript
60
opengl
55
cpp
55
3d
44
game
43
cross-platform
38
graphics
36
c-plus-plus
35
webgl
35
c
33
vulkan
29
android
28
windows
28
gui
28
engine
27
linux
27
threejs
22
macos
21
python
21
2d
20
typescript
19
ios
19
3d-graphics
18
react
18
rust
18
lua
17
cpp17
17
imgui
17
awesome-list
17
animation
17
ui
16
audio
16
ecs
16
haxe
16
csharp
16
rendering
16
open-source
15
awesome
15
header-only
14
entity-component-system
14
monogame
13
wasm
13
physics
13
directx
12
3d-engine
12
metal
12
canvas
11