Ecosyste.ms: Awesome
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: 2 days ago
JSON representation
-
Game Engines
-
Awesome Collections
- Wikipedia: List of Game Engines - Game engines along with their platforms and licenses.
- CoolEngines - List of open source graphic & game engines.
-
Popular
- Unity - Biggest name in game engines, industry standard. [[Awesome](https://github.com/RyanNielson/awesome-unity)]
- Unreal Engine - AAA quality, insane feature set, photoreal visuals. [[Awesome](https://github.com/insthync/awesome-ue4#readme)]
- Godot - Feature-packed, open source engine. Excellent! [[Awesome](https://github.com/godotengine/awesome-godot#readme) | [Website](https://godotengine.org)]
- Unreal Engine - AAA quality, insane feature set, photoreal visuals. [[Awesome](https://github.com/insthync/awesome-ue4#readme)]
-
AAA
- C4 Engine - Modern console engine.
- CRYENGINE - Powerful real-time game development platform by _Crytek_.
- Evergine - High-quality 3D and 2D solutions. Formerly _Wave Engine_. [[Samples](https://github.com/EvergineTeam/Samples)]
- Frostbite - Cutting-edge games and experiences by _Electronic Arts_.
- Gamebryo - Complete toolset, flexible workflow, rapid prototyping.
- Snowdrop Engine - Enabling small teams to create AAA games, by _Massive Entertainment_.
- Unigine - Real-time 3D engine. Photorealistic graphics, large virtual worlds, C++ and C# API.
- Amazon Lumberyard - AAA engine integrated with AWS and Twitch. Forked from _CRYENGINE_.
- C4 Engine - Modern console engine.
- Flax Engine - Modern 3D game engine written in C++ and C#.
- Gamebryo - Complete toolset, flexible workflow, rapid prototyping.
-
Commercial
- AppGameKit - Easy and quick game making by _TheGameCreators_.
- Buildbox - Create 3D & 2D video games without coding.
- Construct - Drag and drop game builder. [[Awesome](https://github.com/ConstructCommunity/awesome-construct#readme)]
- Corgi Engine - 2D/2.5D platformer engine built on top of _Unity_.
- Felgo - Build cross-platform 2D games in days, built with _Qt_.
- GameGuru - Game builder, 3D, no coding required by _TheGameCreators_.
- GameMaker Studio - Popular 2D game development environment by _YoYo Games_.
- GameSalad - Sophisticated visual programming interface.
- Luxe - 2D first engine, with a 2D/3D renderer.
- MANU - Unique animation system helps you create games without coding.
- Phaser Editor 2D - Commercial, web-based editor for _Phaser_. [[GitHub](https://github.com/PhaserEditor2D/PhaserEditor2D-v3)]
- PlayCanvas - Popular (Flappy Bird), WebGL game engine. [[Awesome](https://github.com/playcanvas/awesome-playcanvas#readme) | [GitHub](https://github.com/playcanvas/engine)]
- Roblox - Create immersive 3D experiences with Lua scripting.
- Simulation Starter Kit - Create interactive 3D apps across a range of platforms.
- Stencyl - Quick and easy game making with visual scripting. [[GitHub](https://github.com/Stencyl/stencyl-engine)]
- Titan Engine - Cross-platform engine, started in 2000. Formerly _Esenthel Engine_.
- Defold - Open sourced game engine by _King_. [[Website](https://defold.com)]
- NeoAxis - Versatile real-time platform for making games and apps. [[Website](https://www.neoaxis.com)]
-
Specialty
- 3dSen - Emulator that lets you play _NES_ games in 3D. [[Website](http://www.geodstudio.net)]
- Platforming Engine - Everything you need to create your own platformer in _GameMaker_.
- RPG in a Box - Turn your stories and ideas into games, built with _Godot_.
- RPG Maker - Create an original role-playing game without any specialized knowledge.
- GB Studio - Retro adventure game creator for _Game Boy_.
- HARFANG 3D - 3D visualization library for industry professionals, usable in C++, Python, Lua, Go.
- Ren'Py - Visual novel engine. [[Website](https://www.renpy.org/)]
- Twine - Tool for telling interactive, nonlinear stories.
- DopeFish - _Doom_ / _Heretic_ map loading system for _GameMaker_.
- DopeFish - Doom / Heretic map loading system for _GameMaker_.
-
-
Learning
-
Computer Graphics
- Comparison of Modern Graphics APIs - Modern graphics APIs vs older APIs.
- GPU Performance for Game Artists - Common art-related performance issues.
- GPU Gems - Programming techniques, tips, and tricks for real-time graphics.
- GPU Gems 2 - Programming techniques for high-performance graphics.
- Interactive Computer Graphics - Top down approach to computer graphics.
- Physically-Based Rendering - From the Academy Award winning authority on PBR.
- Game Art Tricks - Articles exploring different graphics techniques.
- Scratchapixel - In depth coverage of computer graphics topics.
- DirectX - Microsoft API used to create 2D/3D games and apps. [[Blog](https://devblogs.microsoft.com/directx/) | [Samples](https://github.com/microsoft/DirectX-Graphics-Samples)]
- DirectXTutorial.com - Older resource with lots of tutorials on DirectX versions 9 & 11.
- Glide - Developed by _3dfx Interactive_ for their _Voodoo Graphics_ in the 1990's.
- Glide Open Source Project - Glide open source project.
- Metal Tutorial - Learn how to get started with Apple's 3D graphics API at RayWenderlich.com.
- LearnOpenGL - Incredible! In depth tutorials for modern graphics programming.
- Mesa 3D - Open source implementations of OpenGL.
- OpenGL - The industry's foundation for high-performance graphics.
- OpenGL Tutorial - Collection of OpenGL tutorials with source code examples.
- Vulkan - Modern cross-platform graphics API. [[Samples](https://github.com/khronosGroup/Vulkan-samples)]
- Vulkan Tutorial - Teaches the basics of using Vulkan graphics and compute API.
- WebGL - Open web standard 3D graphics API. [[GitHub](https://github.com/KhronosGroup/WebGL)]
- WebGL Fundamentals - Full understanding of what WebGL really is and how it works.
- WebGL 2 Fundamentals - Updated to use the WebGL2 standard.
- WebGL Tutorial - How to use the canvas element to draw WebGL graphics.
- Dawn - Open source, cross-platform implementation of the WebGPU standard, by _Google_.
- WebGPU - Next generation web 3D graphics API. [[GitHub](https://github.com/gpuweb/gpuweb)]
- WebGPU Demos - Collection of simple WebGPU examples by _Apple_.
- CUDA - Developed by _NVIDIA_ for parallel computing and programming.
- DirectCompute - Developed by _Microsoft_ for using compute shaders with DirectX 10 & 11.
- OpenCL - For writing programs that execute across CPUs, GPUs, and other processors.
- RB Whitaker's Wiki - Tutorials on C#, MonoGame, XNA, and more.
- Riemer's MonoGame Tutorials - Everything you need to start programming with MonoGame.
- Awesome Demoscene - Underground computer art culture exploring computer graphics and sound.
- Awesome Graphics Libraries - Curated list of 3D graphics libraries and resources.
- WebGL 2 Samples - Short and easy to understand samples demonstrating WebGL 2 features.
- XNA Game Studio Archive - Required visit for [MonoGame](https://en.wikipedia.org/wiki/MonoGame) / [FNA](https://fna-xna.github.io/) / [XNA](https://en.wikipedia.org/wiki/Microsoft_XNA) developers.
- Lighthouse3d.com - Collection of tutorials on OpenGL, GLSL and other graphics topics.
- GPU Gems 3 - Collection of state-of-the-art GPU programming examples hosted by _NVIDIA_.
- Mantle - Developed by _AMD_ as an alternative to Direct3D and OpenGL.
- Metal - API for developing 3D apps on _Apple_ platforms. [[Samples](https://developer.apple.com/metal/sample-code/)]
- Scratchapixel - In depth coverage of computer graphics topics.
- Paper Bug - Indexed compendium of graphics programming papers.
- Metal Tutorial - Learn how to get started with Metal at _RayWenderlich.com_.
-
Engine Development
- 3D Game Engine Programming - Helping you build your dream game engine.
- How to Become a Game Engine Developer - Starting point on game engine development.
- Game Engine Architecture - Theory and practice of game engine development.
- Activision Research - Blog posts, articles and presentations from research within _Activision_.
- EA Technology - Research on game tech including info on the _Frostbite_ engine.
- Ubisoft Technology - Learn about in-house tech including the _Anvil_ and _Snowdrop_ engines.
-
Game Development
- Magictools - List of game development resources to make magic happen.
- Web Game Dev - Resources on techniques and tools around JavaScript game development.
- Art of Game Design - Teaches game design in an accessible manner.
- Game Programming Patterns - Patterns found in games that make code easier to understand.
- GameDev.net - Game dev forums, tutorials, blogs, projects, portfolios, and news.
- GameFromScratch.com - Game dev news, tutorials and much more.
- itch.io - Game dev resources and platform to showcase / promote / buy & sell games.
- Lazy Foo' Tutorials - Beginning game programming with SDL.
- Awesome Gamedev - Collection of free resources for making games.
- GameDev-Resources - Wonderful list of game development resources.
- Game Developer - Industry blogs, events, jobs, updates and more. Formerly _Gamasutra_.
-
Graphical User Interface
- List of Widget Toolkits - Gui frameworks across all platforms and languages.
-
Programming
- Big-O Cheat Sheet - Big-O complexities of algorithms used in computer science.
- Deadlock Empire - Interactive tutorial to master threads and concurrency.
- Games of Coding - Games that teach you a programming language.
- Geeks for Geeks - Tutorials, articles, courses, coding competitions, jobs and more.
- Learn to Program - Educational resources to learn to program.
- TIOBE Index - Popularity of programming languages, updated monthly.
- Every Programmer Should Know - Technical things every developer should know.
-
-
Libraries
-
BASIC
- Basics Page - Comprehensive list of BASIC languages.
- Basic for Qt - BASIC language and environment built with _Qt_. Formerly _Q7Basic_.
- Visual Basic - Object-oriented language for Windows by _Microsoft_.
- QB64 - Modern BASIC+OpenGL language, retains _QBasic_ / _QB4.5_ compatibility.
- Dark Basic - BASIC programming language for creating apps and games. [[Website](https://www.thegamecreators.com/product/dark-basic-pro-open-source)]
- Visual Basic - Object-oriented language for Windows by _Microsoft_.
-
C
- Learn C Programming - Excellent tutorials that will guide you to learn C programming.
- stb_vorbis - Ogg Vorbis audio decoder.
- stb_truetype - Single-header file library that processes TrueType font files.
- Marching Squares - Convert images into triangles. [[Info](https://prideout.net/marching-squares)]
- Octasphere - Generates triangle meshes for spheres, boxes, and capsules. [[Info](https://prideout.net/blog/octasphere/)]
- Par_Shapes - Triangle meshes including solids, spheres and more. [[Info](https://prideout.net/shapes)]
- Raymath - Math library included in the _RayLib_ game framework.
- glfw - Cross-platform API for windowing, graphics contexts, input and events.
- MiniFB - Creates a cross-platform frame buffer for drawing pixels.
- SDL - Low level access to audio, keyboard, mouse, joystick, and graphics hardware.
- Sokol - Single-file libraries for graphics, windowing, file handling, audio and more.
- Miniaudio - Single-file audio playback and capture library.
- SDL_mixer - Audio mixer that supports various file formats for SDL.
- SoLoud - Free, easy, portable audio engine for games.
- Cosmopolitan - Build-once run-anywhere C library.
- Flecs - Fast and lightweight entity component system in C99.
- Assimp - Open Asset Importer Library. Loads 40+ 3D file formats.
- cgltf - Single-file glTF 2.0 loader and writer in C99.
- dr_libs - Single-file audio decoding libraries.
- Libspng - Simple, modern libpng alternative.
- Miniz - Single-file drop-in replacement for zlib's most used APIs (_libpng_ and _libzip_).
- OBJ GL Loader v2 - Quite fast wavefront OBJ loader for OpenGL.
- PL_MPEG - Single-file library for decoding MPEG1 Video and MP2 Audio.
- QOI - The “Quite OK Image Format” for fast, lossless image compression.
- HexEmbed - Small utility to help embed files in C/C++ programs in an easy, cross-platform way.
- Incbin - Include binary and text files in your C/C++ apps with ease.
- PhysicsFS - Portable, flexible file I/O abstraction. Provides access to various archives.
- Where Am I - Locates the current path on the local file system.
- Font Stash - Lightweight library that uses stb_truetype to render fonts to a texture atlas.
- IconFontCppHeaders - C/C++ headers and C# classes for icon fonts.
- Vertext - Generates vertices for rendering text, requires stb_truetype.
- AVA - Tiny, minimalistic 3D game engine.
- TIC-80 - Virtual computer for making & sharing tiny games. [[Website](https://tic80.com/)]
- CGL - Single-header file, lots of graphics & utility functions.
- DOME - Melds SDL2 and the Wren scripting language. [[Website](https://domeengine.com/)]
- Entrypoint - Lightweight entry point for games.
- FWK - 3D game framework.
- Gunslinger - Header-only C99 framework for multimedia apps.
- RayLib - Simple and easy-to-use library to enjoy 2D/3D videogame programming.
- Blob - Single-header implementation of a contour tracing algorithm.
- NanoVG - OpenGL-based 2D vector drawing library for UI and visualizations.
- Tilengine - 2D graphics with raster effects for retro style game development.
- Sokol Graphics Painter - 2D graphics painter implemented with _Sokol_.
- cImgui - Thin C wrapper generated for Dear ImGui.
- lvgl - Embedded gui library, many widgets and advanced visual effects.
- NAppGUI - Professional, well documented SDK to build desktop apps.
- Native File Dialog - Portably invoke native file open / save dialogs.
- Nuklear - Single-header immediate mode cross-platform gui library.
- libGamepad - Cross-platform library for gamepad input.
- Cute Headers - Single-file libraries primarily used for games, by [Randy Gaul](https://github.com/RandyGaul).
- Libs - Single-file public domain libraries for C/C++, by [Mattias Gustavsson](https://github.com/mattiasgustavsson).
- Pico Headers - Single-file, cross-platform libraries for game development.
- Single-file Libs - Amazing collection of single-file C/C++ libraries compiled from many authors.
- stb - Single-file public domain libraries for C/C++, by [Sean Barrett](https://github.com/nothings).
- Light Mapper - Single-file library for lightmap baking by using your existing OpenGL renderer.
- Cglm - Highly optimized OpenGL math.
- Handmade Math - Simple, public domain math library for games and computer graphics.
- Kazmath - Math library targeted at games.
- librg - Middleware between networking / file-streaming libraries and app logic.
- Chipmunk - Fast, lightweight 2D game physics library. [[Docs](https://chipmunk-physics.net/documentation.php)]
- Duktape - Embeddable JavaScript engine with a focus on portability and compact footprint.
- JerryScript - Ultra-lightweight JavaScript engine for the Internet of Things.
- Lua - Powerful, efficient, lightweight, embeddable scripting language.
- QuickJS - Small and embeddable JavaScript engine.
- Sokol Gfx - Cross-platform, single-file graphics. [[Examples](https://floooh.github.io/sokol-html5/)]
- Sokol Gamepad - Branch with addon support for gamepads in _Sokol_.
- Par_Streamlines - Triangulating thick lines, béziers, streamlines. [[Demo](https://github.com/prideout/streamlines_demo) | [Info](https://prideout.net/blog/par_streamlines/)]
-
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.
- Learn C++ - Walks you through all the steps to write, compile, and debug C++.
- 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)]
- Boost Libraries - Wide range of C++ libraries, many end up as part of the STL. [[Website](https://www.boost.org)]
- Inqlude - List of libraries for developers of Qt-based apps.
- List of Open Source C++ Libraries - Comprehensive list of open source C++ libraries.
- NVIDIA GameWorks - _NVIDIA_ technologies for game & app developers.
- ODE - Open Dynamics Engine, 3D rigid body physics.
- AngelScript - Cross-platform scripting library, follows the widely known syntax of C/C++.
- 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.
- EntityX - Fast, type-safe C++ entity component system.
- 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/)]
- 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. [[Editor Info](http://ezengine.net/pages/getting-started/editor-overview.html)]
- 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, based on [Seamless](https://cragl.cs.gmu.edu/seamless/).
- 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.
- 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.
- Oryol Input - Input module from the _Oryol_ game framework.
- Octave - 3D game engine for GameCube, Wii, 3DS, and more.
-
C#
- Dot Net Perls - Reference for the C# language.
- Blazor - C# to JavaScript (as WebAssembly) technology by _Microsoft_. [[Website]((https://dotnet.microsoft.com/en-us/apps/aspnet/web-apps/blazor))]
- Unity - Biggest name in game engines, industry standard.
- Veldrid - Cross-platform, graphics API-agnostic rendering and compute library for .NET.
- 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_. [[Gui Editor](http://vchelaru.github.io/Gum/) | [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. [[LearnOpenGL](https://github.com/opentk/LearnOpenTK)]
- Veldrid - Cross-platform, graphics API-agnostic rendering and compute library for .NET.
- 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.
- Friflo.Engine.ECS - Archetype based ECS with focus on performance, cache locality and DX.
-
Dart
- Awesome Dart - Curated list of awesome Dart frameworks, libraries, and software.
- Flutter - Open source app framework by _Google_. [[Awesome](https://github.com/Solido/awesome-flutter) | [GitHub](https://github.com/flutter)]
- 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/#/) | [Tutorials](https://tutorials.flame-engine.org/#/) | [Website](https://flame-engine.org/)]
-
Go
- Awesome Go - Awesome Go frameworks, libraries and software.
- 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)]
- Go - Statically typed, compiled programming language designed at _Google_. [[GitHub](https://github.com/golang)]
-
Haxe
- Awesome Haxe Game Dev - Awesome list of game dev resources for Haxe.
- Haxe - Produce cross-platform native code. [[GitHub](https://github.com/HaxeFoundation/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".
- Lime - Flexible, lightweight layer for Haxe cross-platform developers.
- 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)
-
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)]
-
Java
- Awesome Java - Awesome frameworks, libraries and software for Java.
- Java - General-purpose language, runs on [Java virtual machines](https://en.wikipedia.org/wiki/Java_virtual_machine). [[GitHub](https://github.com/openjdk)]
- Learn Java - Official docs and tutorials.
- 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/)]
- OpenGL & GLSL Tutorials - OpenGL / GLSL tutorials for _LWJGL_ and _libGDX_.
-
JavaScript
- Eloquent JavaScript - Modern JavaScript programming, with examples.
- MDN - Mozilla Developer Network, excellent learning resource.
- W3 Schools - Learn to code with the world's largest web developer site.
- Apache Cordova - Mobile apps (iOS / Android) with with JavaScript, HTML, and CSS.
- 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)]
- Progressive Web Apps - Using web tech in a way that feels like platform-specific apps.
- React Native - Framework for building native apps using React. [[Website](https://reactnative.dev/)]
- 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/)]
- 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)]
- Oasis - WebGL framework by _AntGroup_. 2D/3D, animation, physics.
- CanvasKit - WebAssembly build of _Google_'s 2D graphics library, Skia. [[Samples](https://skia.org/docs/user/modules/canvaskit/)]
- Stage.js - 2D rendering engine for game development. [[Examples](https://piqnt.com/stage.js/)]
- 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. [[Demos](https://google.github.io/filament/webgl/)]
- WebGL Frameworks - List of WebGL frameworks on Wikipedia.
- WebGL / WebGPU Frameworks - List of WebGL and WebGPU frameworks and libraries.
- Discover Three.js - Create stunning 3D web apps using Three.js.
- 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.
- Stage.js - 2D rendering engine for game development. [[Examples](https://piqnt.com/stage.js/)]
- Planck.js - JavaScript rewrite of the Box2D physics engine. [[Demos](https://piqnt.com/planck.js/)]
- 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.
- Electron Alternatives - Cross-platform gui app development options.
- 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/). [[Examples](https://melonjs.github.io/examples/) | [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.
- Phaser - Fast 2D game framework. [[Website](https://phaser.io)]
- 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](https://webglstudio.org).
- 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)]
-
Kotlin
- Awesome Kotlin - List of awesome Kotlin related stuff.
- 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.
- Kool - Multi-platform 3D Vulkan / OpenGL graphics engine. [[Examples](https://fabmax.github.io/kool/kool-js/)]
- KTX - Kotlin extensions for the _libGDX_ game framework.
-
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.
- Python.org - Programming language that lets you work quickly. [[Docs](https://www.python.org/doc/)]
- 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 CMU. [[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/)]
-
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.
- Rust - Empowering everyone to build quality software. [[Docs](https://www.rust-lang.org/learn) | [GitHub](https://github.com/rust-lang)]
- 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)]
-
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.
- Known Folders - Provides access to well-known folders across several operating systems.
- Mach - Game engine & graphics toolkit. [[Examples](https://machengine.org/gpu/)]
- Zig-Gamedev Project - Sample apps and libraries using DirectX 12.
- Mini Pixel - Tiny pixel art editor. [[Download](https://fabioarnold.itch.io/mini-pixel)]
- Pixi - Pixel art editor.
- Cyber - Fast, efficient, and concurrent scripting language.
- Zig Learn - Excellent Zig language resource.
-
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.
-
-
Open Source Games
-
C
- Handmade Hero - Videos on making a game from start to finish, source code for $15.
- Doom - The original 1993 3D masterpiece by _id Software_.
- Gish - Open Source version of the award-winning physics platformer. [[Steam](https://store.steampowered.com/app/9500/Gish/)]
-
C++
- zDoom - Modern, feature centric port for all Doom engine games. [[Website](https://zdoom.org/index)]
- Doom 3 - Doom 3 GPL source release.
- Dungeon Crawl: Stone Soup - Classic roguelike adventure. [[Play](https://crawl.develz.org/)]
- Etheral Legends - Indie Action RPG built with _Unreal Engine 4_. [[Steam](https://store.steampowered.com/app/428980/Ethereal_Legends/)]
- OpenLara - Classic Tomb Raider open source engine. [[Play](http://xproger.info/projects/OpenLara/)]
- TeeWorlds - Retro multiplayer shooter. [[Website](https://teeworlds.com/)]
-
Java
- Pixel Dungeon - Traditional roguelike game with pixel-art graphics and simple interface.
-
-
Specialty Topics
-
AI / Pathfinding
- Intro to AI - Intro to AI Programming for Games at RayWenderlich.com.
- Beginner's Guide to Game AI - Intro to concepts used in AI for games.
- Intro to AI - Intro to AI Programming for Games at RayWenderlich.com.
-
Animation Info
- Skeletons and Inverse Kinematics - Principles for using skeletons with IK for animation.
- Skeletons and Inverse Kinematics - Principles for using skeletons with IK for animation.
-
Color Manipulation
- How to Choose Colors Procedurally - Procedural palettes and how to generate them.
- Red, Yellow, and Blue - Convert colors from the paint color wheel to RGB space. [[Source](https://github.com/bahamas10/ryb)]
- Red, Yellow, and Blue - Convert colors from the paint color wheel to RGB space. [[Source](https://github.com/bahamas10/ryb)]
-
Entity Component Systems
- A Simple Entity Component System - Basis for an ECS in C++.
- Evolve Your Hierarchy - Overview of ECSs and why to use them, at [Cowboy Programming](https://cowboyprogramming.com).
- Intro to Component-Based Architecture in Games - Component-based architecture.
- Nomad Game Engine - Articles building an ECS from the ground up in C++. [[Source](https://github.com/taurheim/NomadECS)]
- What's an Entity System - Overview of ECSs, how they are used in game development.
- Intro to Component-Based Architecture in Games - Component-based architecture.
-
Fluid / Smoke
- Fluid Simulation on the GPU - GPU Gems Chapter 38 - Fast, stable fluid simulation on the GPU.
- Fluids-2D - Real-time fluid dynamics on the GPU with the help of WebGL and Three.js. [[Source](https://github.com/mharrys/fluids-2d)]
- GPU Fluid Experiments - Cross-platform GPU fluid simulation. [[Source](https://github.com/haxiomic/GPU-Fluid-Experiments)]
- WebGL Fluid Simulation - Play with fluids in your browser (even on mobile). [[Source](https://github.com/PavelDoGreat/WebGL-Fluid-Simulation)]
-
Geometry
- Constructive Solid Geometry - Technique using boolean operations to combine primitive objects.
- Geometry, Surfaces, Curves, Polyhedra - Geometry topics including meshes, shapes, textures and more.
- Laplacian Smoothing - Draft notes with C++ code for laplacian smoothing of meshes.
- Subdivision at Matt's Webcorner - Smoothing with subdivision surfaces.
- Subdivision Surfaces - Explanations of different schemes used in subdivision surfaces.
- csg.js - JavaScript library implementing CSG. [[Examples](https://evanw.github.io/csg.js/)]
- three-bvh-csg - Fast and dynamic CSG on top of three-mesh-bvh.
- three-csgmesh - Conversion of the csg.js library for use with Three.js.
- Mesh Transforms - _Apple_'s private API for manipulation of UIView meshes. [[Source](https://github.com/olegtyshcneko/CAMeshTransform)]
-
Hair
- Fuzzy Meshes - Simulating fur with cones and gravity. [[Source](https://github.com/zadvorsky/three-fuzzy-mesh)]
-
Lighting / Shadows
- What Every Coder Should Know About Gamma - Light emission vs perceptual brightness.
- Gleaner Heights: 2D Lighting - Simple intro to 2D lighting in a game with GLSL.
- Forward Rendering vs. Deferred Rendering - Techniques for handling many lights.
- Forward+ Rendering / Tiled Forward Shading - Forward rendering with tiled light culling.
- 2D Pixel Perfect Shadows - An approach to 2D pixel-perfect lights / shadows using shaders.
- 2D Visibility - Excellent interactive tutorial on 2D visibility.
- Fast 2D shadows in Unity - Adapting 3D rendering techniques to achieve fast 2D shadows.
- Sight & Light - How to create 2D visibility / shadow effects for your game. [[Source](https://github.com/ncase/sight-and-light)]
- Symmetric Shadowcasting - Common technique for calculating field of view.
- Efficient Soft-Edged Shadows - GPU Gems 2 Chapter 17.
- Screen Space Shadows - Great exploration of screen space shadows.
- Shadow Mapping - Shadow mapping and the techniques used to acheive it.
- Threex Volumetric Spotlight - Great example of volumetric lighting with Three.js. [[Source](https://github.com/jeromeetienne/threex.volumetricspotlight)]
- Volumetric Light Approximation - Volumetric light approximation (godrays) with Three.js.
- Basic Lighting - 3D lighting article by _LearnOpenGL_.
-
Particles
- Soft Particles - Implementing soft particles in WebGL.
- Particles - Article by _LearnOpenGL_.
-
Physics
- Fix Your Timestep! - How to keep physics stable with variable fps.
- Game Physics from Scratch - Starting resource for game physics.
- Intro to Physics - Part I: Intro to Rigid Body Dynamics.
- Open Source Physics Engines - List of open source physics engines.
- 2D Physics Games - Using Box2D for water, ropes, gravity, lines, vehicles, etc.
- Basic 2D Platformer Physics - How to create a physics system for a platformer.
- Ledge Grabbing - Tutorial on ledge grabbing in 2D platformer physics.
- Draw SVG rope using JavaScript - SVG path vector rope drawing.
- Ropes in Contraption Maker - Implementing the physics of ropes in _Contraption Maker_.
- Matter.js: Chains - Chains demo using _Matter.js_. [[Source](https://github.com/liabru/matter-js/blob/master/examples/chains.js)]
- Blob Physics - Using verlet physics to simulate 2D blobs.
- Making a Verlet Physics Engine - Under the hood of a 2D physics engine in JavaScript.
- 2D Water - Modeling 2D water with springs.
- Making a Verlet Physics Engine - Under the hood of a 2D physics engine in JavaScript.
- Making a Verlet Physics Engine - Under the hood of a 2D physics engine in JavaScript.
- Making a Verlet Physics Engine - Under the hood of a 2D physics engine in JavaScript.
- Making a Verlet Physics Engine - Under the hood of a 2D physics engine in JavaScript.
- Making a Verlet Physics Engine - Under the hood of a 2D physics engine in JavaScript.
- Making a Verlet Physics Engine - Under the hood of a 2D physics engine in JavaScript.
- Making a Verlet Physics Engine - Under the hood of a 2D physics engine in JavaScript.
- Making a Verlet Physics Engine - Under the hood of a 2D physics engine in JavaScript.
- Making a Verlet Physics Engine - Under the hood of a 2D physics engine in JavaScript.
- Making a Verlet Physics Engine - Under the hood of a 2D physics engine in JavaScript.
- Making a Verlet Physics Engine - Under the hood of a 2D physics engine in JavaScript.
- Making a Verlet Physics Engine - Under the hood of a 2D physics engine in JavaScript.
- Making a Verlet Physics Engine - Under the hood of a 2D physics engine in JavaScript.
- Making a Verlet Physics Engine - Under the hood of a 2D physics engine in JavaScript.
- Making a Verlet Physics Engine - Under the hood of a 2D physics engine in JavaScript.
- Making a Verlet Physics Engine - Under the hood of a 2D physics engine in JavaScript.
- Making a Verlet Physics Engine - Under the hood of a 2D physics engine in JavaScript.
- Making a Verlet Physics Engine - Under the hood of a 2D physics engine in JavaScript.
- Making a Verlet Physics Engine - Under the hood of a 2D physics engine in JavaScript.
- Making a Verlet Physics Engine - Under the hood of a 2D physics engine in JavaScript.
- Making a Verlet Physics Engine - Under the hood of a 2D physics engine in JavaScript.
- Making a Verlet Physics Engine - Under the hood of a 2D physics engine in JavaScript.
- Oryol: Bullet Cloth - _Bullet 3D_ physics cloth using the _Oryol_ game framework. [[Source](https://github.com/floooh/oryol-samples/blob/master/src/BulletPhysicsCloth/BulletPhysicsCloth.cc)]
- Three.js: Ammo Volume - 3D soft body volumes using _Ammo.js_ and _Three.js_. [[Source](https://github.com/mrdoob/three.js/blob/master/examples/physics_ammo_volume.html)]
- Making a Verlet Physics Engine - Under the hood of a 2D physics engine in JavaScript.
- Making a Verlet Physics Engine - Under the hood of a 2D physics engine in JavaScript.
- Making a Verlet Physics Engine - Under the hood of a 2D physics engine in JavaScript.
- Making a Verlet Physics Engine - Under the hood of a 2D physics engine in JavaScript.
- Making a Verlet Physics Engine - Under the hood of a 2D physics engine in JavaScript.
- Making a Verlet Physics Engine - Under the hood of a 2D physics engine in JavaScript.
- Making a Verlet Physics Engine - Under the hood of a 2D physics engine in JavaScript.
- Making a Verlet Physics Engine - Under the hood of a 2D physics engine in JavaScript.
- Making a Verlet Physics Engine - Under the hood of a 2D physics engine in JavaScript.
- Making a Verlet Physics Engine - Under the hood of a 2D physics engine in JavaScript.
- Making a Verlet Physics Engine - Under the hood of a 2D physics engine in JavaScript.
- Making a Verlet Physics Engine - Under the hood of a 2D physics engine in JavaScript.
- Making a Verlet Physics Engine - Under the hood of a 2D physics engine in JavaScript.
- Making a Verlet Physics Engine - Under the hood of a 2D physics engine in JavaScript.
- Making a Verlet Physics Engine - Under the hood of a 2D physics engine in JavaScript.
- Making a Verlet Physics Engine - Under the hood of a 2D physics engine in JavaScript.
- Making a Verlet Physics Engine - Under the hood of a 2D physics engine in JavaScript.
- Making a Verlet Physics Engine - Under the hood of a 2D physics engine in JavaScript.
- Making a Verlet Physics Engine - Under the hood of a 2D physics engine in JavaScript.
- Making a Verlet Physics Engine - Under the hood of a 2D physics engine in JavaScript.
- Making a Verlet Physics Engine - Under the hood of a 2D physics engine in JavaScript.
- Making a Verlet Physics Engine - Under the hood of a 2D physics engine in JavaScript.
- Making a Verlet Physics Engine - Under the hood of a 2D physics engine in JavaScript.
- Making a Verlet Physics Engine - Under the hood of a 2D physics engine in JavaScript.
- Making a Verlet Physics Engine - Under the hood of a 2D physics engine in JavaScript.
-
Rendering
- GPU Driven Rendering - Calculating rendering on the GPU in compute shaders.
- Model Batching - Drawing many different models in a single draw call.
-
Scripting
- Adding Languages to Game Engines - Story of adding scripting to a game.
- Implementing a Scripting Engine - Writting a scripting engine from scratch.
- Embedded Scripting Languages - Scripting languages and engines available as libraries.
- List of Embedded Scripting Languages - Scripting languages to use in your app / game.
- Scriptorium - Game scripting languages benchmarked.
-
Shaders
- 3D Game Shaders For Beginners - Shaders to improve your games. [[Source](https://github.com/lettier/3d-game-shaders-for-beginners)]
- Book of Shaders - Step-by-step guide through [Fragment Shaders](https://www.khronos.org/opengl/wiki/Fragment_Shader). [[Source](https://github.com/patriciogonzalezvivo/thebookofshaders)]
- Geeks3D Shader Library - Postprocessing, lighting, utlities and many more.
- Review of Shader Languages - Differences between HLSL, GLSL, MSL, and WGSL.
- Ronja Tutorials - Tutorials covering many shader techniques.
- Shadertoy - Build and share shaders online.
- LearnOpenGL Tutorial - Techniques used for bloom lighting, presented in OpenGL.
- Three.js: Bloom Example - WebGL bloom postprocessing using _Three.js_. [[Source](https://github.com/mrdoob/three.js/blob/master/examples/webgl_postprocessing_unreal_bloom.html)]
- Unity Tutorial - How to add support for a bloom effect.
- Basic GLSL Displacement Shader - Basic vertex displacement shader using Three.js.
- Dithering on the GPU - Ordered dithering in glsl using 8x8 Bayer Dithering.
- Fire Shader in GLSL - Fire intro shader using noise textures and masking.
- Simplex 3D Noise - Simplex noise fire simulation shader at ShaderToy.
- Drawing Lines - Techniques for 2D/3D line rendering.
- Book of Shaders: Noise - Excellent GLSL noise article by Book of Shaders.
- Color Banding - Using noise / dithering to improve drawing gradients.
- Understanding Perlin Noise - Analysis of Perlin Noise, written in C#. [[Source](https://gist.github.com/Flafla2/f0260a861be0ebdeef76)]
- Fast Solid 2D Outline - Drawing an outline on the alpha channel of a 2D image.
- Let it glow! - Article with shader code on dynamically adding outlines to characters.
- Outline Shader - Nice outline shader. [[Source](https://github.com/steincodes/godot-shader-tutorials)]
- Outlines w/Surface IDs - Technique combining depth, normals and surface IDs. [[Source](https://github.com/OmarShehata/webgl-outlines)]
- Sketchy Outling - Article on producing a sketchy outline look.
- Pixel Art Shaders - Useful GLSL postprocessing shaders for pixel art games.
- Three.js: Pixelation Example - WebGL pixelation postprocessing using _Three.js_. [[Source](https://github.com/mrdoob/three.js/blob/master/examples/webgl_postprocessing_pixel.html)]
- Image Editor Effects - WebGL image filters / effects shaders. [[Source](https://github.com/alaingalvan/image-editor-effects)]
- How do I perform an xBR or hqx filter in XNA? - Upscaling shader code.
- hqx - Wikipedia article about the hqx pixel art upscaling algorithm developed by Maxim Stepin.
- Flat and Wireframe Shading - Flat shading / wireframes using Barycentric Coordinates.
- Shadertoy - Build and share shaders online.
- CrossShader - Cross-compiling shaders between GLSL, HLSL, Metal, and more. [[Online Tool](https://alain.xyz/libraries/crossshader)]
- Shader Park - Shader programming in JavaScript.
- SHADERed - Shader IDE, written in C++.
- Psrdnoise - Tiling simplex flow noise in 2D/3D.
- 2D Water Shader - GLSL fragment shader to simulate 2D water surface in _libGDX_.
- Shadertoy - Build and share shaders online.
-
Signed Distance Fields
- 3D SDFs - Signed distance functions for basic 3D primitives.
- CSG w/SDFs - Using circular SDFs to build 3D objects with CSG. [[Source](https://github.com/jasmcole/Blog/tree/master/CSG)]
- Basic 2D SDFs - Basics of rendering 2D shapes with SDFs in shaders.
- Bezier Strokes - Blog post on rendering bezier strokes with SDFs.
- 2D SDFs - Signed distance functions for basic 2D primitives.
- 3D SDFs - Signed distance functions for basic 3D primitives.
- 2D SDFs - Signed distance functions for basic 2D primitives.
- 3D SDFs - Signed distance functions for basic 3D primitives.
-
Tiling
- Auto-Tile - How to use tile bitmasking to auto-tile your level layouts.
- Blob Tileset - Tutorial on 2D edge and corner matched tilesets.
- List of Eucliden Uniform Tilings - Wikipedia article on uniform tiling, space-filling polygons.
- Space-Filling Polyhedron - [Polyhedra](https://en.wikipedia.org/wiki/Category:Space-filling_polyhedra), 3D polygons that fill space. [[5 Space-Filling Polyhedra](https://www.steelpillow.com/polyhedra/five_sf/five.html)]
-
Transparency
- Depth Peeling - Method for order-independent transparency.
- Weighted, Blended - Method for order-independent transparency.
- Intro to Order-Independent Transparency - Article by _LearnOpenGL_.
-
Network
- Source Multiplayer Networking - _Valve_'s Source Engine multiplayer system.
-
-
Tools / Software
-
2D Game Dev
- ShoeBox - Drag & drop tools for sprite sheets, bitmap fonts, texture ripping, tile maps and more.
- Sprite Illuminator - Create stunning light effects with 2D sprites in your game engine.
- Texture Packer - Create sprite sheets and optimize your game graphics.
- Tiled - General-purpose tile map editor for all tile-based games. [[Source](https://github.com/mapeditor/tiled)]
-
Animation Software
- Cascadeur - 3D animation software for physics-based character animation.
- DragonBones - Open source 2D game skeletal animation solution. [[Source](https://github.com/DragonBones/)]
- Mixamo - Animate 3D characters for games, films and more. By _Adobe_.
- Spine - 2D animation for games.
-
Audio Tools
- Ardour - Record, edit, and mix. [[Source](https://github.com/Ardour/ardour)]
- Audacity - Multi-track audio editor and recorder. [[Source](https://github.com/audacity/audacity)]
- Bosca Ceoil - Easy to use tool for creating music.
- Cakewalk - Complete music production package.
- FamiStudio - Music editor targeted at chiptune artists and NES homebrewers. [[Source](https://github.com/BleuBleu/FamiStudio)]
- fmod - Popular (Hades, Celeste, Untitled Goose Game) audio software for games.
- LMMS - Cross-platform music production software. [[Source](https://github.com/lmms/lmms)]
- PixiTracker - Quickly create musical sketches, chiptunes and sound experiments.
- Sound Box - Compose synthetic music in your browser, good for small demos. [[Source](https://github.com/mbitsnbites/soundbox)]
- SunVox - Powerful [modular synthesizer](https://en.wikipedia.org/wiki/Modular_synthesizer) with pattern-based sequencer ([tracker](https://en.wikipedia.org/wiki/Music_tracker)).
- ZzFXM - Music generator for use in tiny JavaScript apps. [[Source](https://github.com/keithclark/ZzFXM)]
- Bfxr - Classic. For making simple sound effects for games. [[Source](https://github.com/increpare/bfxr)]
- ChipTone - Tool for generating sound effects.
- sfxia - Tiny sound generator.
- LMMS - Cross-platform music production software. [[Source](https://github.com/lmms/lmms)]
-
Color / Palettes
- Colormind - Color scheme generator, can learn color styles from photographs, art, etc.
- COLOURlovers - Share colors, palettes and patterns.
- Coolors - Fast color palette generator.
- Huemint - Uses machine learning to generate colors for graphic design.
- Lospec - Database of palettes for pixel art.
- Paletton - Explore complementary colors on the color wheel.
- COLOURlovers - Share colors, palettes and patterns.
-
Generative Art
- DALL·E - Create realistic images from natural language.
- Disco Diffusion - Notebooks, models and techniques for AI art and animations.[[Source](https://github.com/alembics/disco-diffusion)]
- Midjourney - Image generation accessed through Discord.
- Replicate - Run open source models with a cloud API.
- Dream Fusion - Text-to-3D using 2D diffusion.
- Magic3D - High-resolution text-to-3D content creation.
- NeRF - View synthesis of scenes as neural radiance fields. [[Source](https://github.com/bmild/nerf)]
- Dittytoy - Create generative music using a simple JavaScript API.
-
Image Editors
-
Level Editors
- Radiant - Cross-platform level editor for [idTech](https://en.wikipedia.org/wiki/Id_Tech) games. [[Source](https://github.com/TTimo/GtkRadiant)]
- TrenchBroom - Level editor for Quake-engine games. [[Source](https://github.com/TrenchBroom/TrenchBroom)]
-
Materials / Textures
- ArmorLab - Generate PBR materials by drag & dropping your photos. [[Source](https://github.com/armory3d/armorlab)]
- Filter Forge - Photo effects, realistic textures, and visual editor.
- JSplacement - Cross-platform pseudo-random displacement map generator.
- Material Maker - Procedural [physically-based rendering](https://en.wikipedia.org/wiki/Physically_based_rendering) material maker. [[Source](https://github.com/RodZill4/material-maker)]
- Materialize - Tool for creating materials from images to be used in games. [[Source](https://github.com/BoundingBoxSoftware/Materialize)]
- PixPlant - Tool to allow simple creation of tiling 3D materials.
- TexaTool - Online tool to generate tileable textures by moving sliders.
- Texgen.js - JavaScript texture generator tool. [[Source](https://github.com/mrdoob/texgen.js)]
- TexTools for Blender - UV and texturing tools for _Blender_. [[Source](https://bitbucket.org/renderhjs/textools-blender/src/master/)]
- Filter Forge - Photo effects, realistic textures, and visual editor.
-
Modeling Tools
- 3DS Max - Classic software for 3D modeling and rendering.
- ArmorPaint - Physically-based texture painting, drop in your 3D models and paint. [[Source](https://github.com/armory3d/armorpaint)]
- Asset Forge - Create 3D models and 2D sprites using building blocks.
- Blender - Standard for open source 3D modeling. [[Source](https://github.com/blender/blender)]
- Meshroom - 3D reconstruction, built with the [AliceVision](https://github.com/alicevision/AliceVision) framework. [[Source](https://github.com/alicevision/meshroom)]
- ZBrush Core Mini - Simple and easy to use 3D sculpting tool.
- ZBrush Core - Simple and easy to use 3D sculpting tool.
- Blender - Standard for open source 3D modeling. [[Source](https://github.com/blender/blender)]
-
Particle Tools
- Particle Designer - Powerful particle effects editor designed for macOS.
- TimelineFX - Create amazing particle effects for your games, apps and webpages.
-
Pixel Art
- Aseprite - Animated sprite editor and pixel art tool. [[Source](https://github.com/aseprite/aseprite)]
- Ditherdragon - Resample art, sketches and images into pixel-art.
- Fluid FX - Uses fluid simulation to achieve animations like explosions, blood, smoke, etc.
- Juice FX - Add style to your sprites and animations with ease.
- Piskel - Online editor for animated sprites & pixel art. [[Source](https://github.com/piskelapp/piskel)]
- PixaTool - Create pixel art by converting your images, sprites or videos.
- Pixel FX - Create pixel art particle effects and render them to sprite sheets.
- Smear FX - Make your 2D animations juicy by adding some smearing to them.
-
Vector Editors
- Inkscape - Cross-platform, open source vector graphics editor. [[Source](https://github.com/inkscape/inkscape)]
- Krita - Professional quality, open source painting. [[Source](https://github.com/KDE/krita)]
- Vec Maker - Easy to use vector design.
- Inkscape - Cross-platform, open source vector graphics editor. [[Source](https://github.com/inkscape/inkscape)]
-
Voxel
- MagicaVoxel - Lightweight voxel art editor.
- Qubicle - Popular (Crossy Road, Pacman 256) voxel editor, easy creation of 3D models.
- Ken Shape - Draw in 2D, set the depth for each pixel and generate 3D models!
-
-
Video Game Assets
-
Audio Assets
- BandLab Sounds - High-quality loops and packs used for music creation.
- Bensound - Original music tracks, free with attribution. Perfect for games.
- Incompetech - Nice collection of game tracks. Buy or attribution required.
- Melody Loops - Nice mix of free and affordable music loops.
- Royalty Free Music Clips - Huge collection of free and paid royalty free music tracks.
- Soundimage - Looping music tracks for videogames. Buy or attribution required.
- Freesound - Community-based archive of free sound effects.
- Free Sound Effects - Large collection of sound effects.
- Soundsnap - Subscription-based professional sound effects library.
- Freesound - Community-based archive of free sound effects.
-
Graphic Assets
- Flaticon - Quality vector icons and stickers.
- Freepik - Illustrations, photos, icons and presentation templates.
- Kenny - 2D/3D CC0 1.0 game graphics and other assets.
- Open Game Art - Portal for free / public domain game art online.
- Top Free Game Assets - Top free game assets listed on _itch.io_.
- Flaticon - Quality vector icons and stickers.
-
Material Assets
- AmbientCG - Public domain materials for physically-based rendering.
- Pmndrs Materials - Collection of public domain materials.
-
Model Assets
- Poly Pizza - Build something beautiful with thousands of free low poly models.
- Quaternius - Collection of CC0 1.0 3D models.
- Sketchfab - Huge library of 3D assets.
-
-
Legend
-
Model Assets
-
Programming Languages
Categories
Sub Categories
JavaScript
190
C++
189
C
70
Physics
62
Haxe
44
Computer Graphics
42
Shaders
35
C#
30
Rust
21
Commercial
18
Lighting / Shadows
15
Audio Tools
15
Zig
12
Game Development
11
AAA
11
Python
10
Audio Assets
10
Materials / Textures
10
Specialty
10
Geometry
9
Go
9
Signed Distance Fields
8
Generative Art
8
Java
8
Modeling Tools
8
Pixel Art
8
Pascal
7
Programming
7
Color / Palettes
7
Ruby
7
Entity Component Systems
6
Engine Development
6
Model Assets
6
Graphic Assets
6
Kotlin
6
BASIC
6
Lua
5
Scripting
5
F#
5
Vector Editors
4
Tiling
4
2D Game Dev
4
Popular
4
Fluid / Smoke
4
Dart
4
Animation Software
4
Color Manipulation
3
AI / Pathfinding
3
Transparency
3
Voxel
3
Particles
2
Level Editors
2
Material Assets
2
Rendering
2
Animation Info
2
Awesome Collections
2
Particle Tools
2
Image Editors
2
Graphical User Interface
1
Hair
1
Network
1
Keywords
game-engine
95
gamedev
90
game-development
85
javascript
59
opengl
53
cpp
52
3d
42
cross-platform
38
game
38
webgl
36
c-plus-plus
34
graphics
33
android
27
engine
27
vulkan
27
c
27
linux
26
windows
26
gui
24
threejs
21
2d
19
typescript
19
react
18
ios
18
cpp17
17
python
17
rust
17
macos
17
3d-graphics
16
rendering
16
animation
16
imgui
15
lua
15
open-source
15
ecs
15
haxe
15
wasm
14
audio
14
header-only
13
entity-component-system
13
awesome-list
13
csharp
13
ui
12
canvas
12
physics
12
3d-engine
12
awesome
12
reflection
11
metal
11
directx
11