awesome-gamedev
by mbrukman
A collection of free software and free culture resources for making amazing games. (mirror)
AI summary
Game dev toolkit
A curated collection of resources for game development, including software tools, assets, and communities.
- stars
- 23
- forks
- 1
- watching
- 1
- awesome lists
- 2
- entries
- 331
What's in the list
331 links in 38 sections, with live GitHub stats.activeno commit in 2y
Assorted Assets
- Openclipart
A giant collection of clip art.
- OpenGameArt.org
A large collection of art intended for game development. Various licenses, including free ones
- Wikimedia Commons
A collection of various assets of all kinds. Various licenses, all CC or free-er
- Open Source Game Clones
A collection of open source videogames that are clones of old games
Audio / Editors
- Ardour
The digital audio workstation. or later
- Audacity
Software for recording and editing sounds. or later
- Beast
Music composition and modular synthesis software. or later
- Hydrogen
An advanced drum machine, with a free drum kit included. or later
- LMMS
A digital audio workstation. or later
- MilkyTracker
Multi-platform application for creating .mod and .xm module files. or later
- Musagi
A large and sophisticated music editor.
rFXGen
a tool to generate sound waves procedurally
Audio / General
- GameSounds.xyz
Royalty free music and sounds. Various licenses, including free ones
- Musical Artifacts
A collection of music-related everything. Various licenses, all CC
Audio / Music
- CC0 Music
A collection of music.
- ccMixter
A site for collaborating with musicians. Various licenses, all CC
- Creative Commons on Bandcamp
Everything on Bandcamp under a CC-license. Various licenses, all CC
- Creative Commons on SoundCloud
A Creative Commons collection on SoundCloud. Various licenses, all CC
- Free Music Archive
An archive of free music. Various licenses, all CC
- Incompetech
An artist providing royalty free music of all genres.
- Jamendo
A site providing music licensed under the Creatives Commons. Various licenses, all CC
- LibreFM
A big collection of stations, with fully-free music. Licenses allow downloads and reuse
- Musopen
A site dedicated to copyright-free (and culturally free) music. Various licenses, all copyright-free (varies by piece)
- Open Music Archive
Digitized out-of-copyright sound recordings. Public domain in the UK
- Silverman Sound Studios' Music Tracks
A bunch of musical tracks.
Audio / Sound Effects
Audioaugust
A collection of sound effects, originally used for a game.
- Freesound.org
A collection of CC-licensed sound effects. Various licenses, all CC
jsfxr
A tool like sfxr-sdl but in ECMAScript.
- Opsound
A collection of assorted sounds.
- sfxr-sdl
A tool to generate sounds.
- SoundBible's Royalty-free section
A collection of CC or public-domain-licensed sounds. Various licenses, all CC or public domain
Communities
- /r/freeculture
Part of the Free Culture Reddit Community. A general free-culture-focused community
- /r/FreeGaming
Part of the Free Culture Reddit Community. Designed specifically for discussion of free culture games
- /r/freesoftware
A general free-software-focused community
- /r/godot
A community for discussion and support in development with the Godot game engine
- FreeGameDev Forums
A forum community for all things free-game-development-related
- FreeGaming
A community dedicated to free gaming
- Libregamewiki
The free gaming encyclopedia
Engines / General
AGS
Implemented in C++. Scripted using its own scripting language. Designed for adventure games.
- AlephOne
Implemented in C++. Designed for FPS games. or later
- AnKi 3D
Implemented in C++.
- Arianne
Implemented in Java. Includes a multiplayer game framework. only
- Azul3D
Implemented in Go.
Backbone
Implemented in ECMAScript.
BananaBread
Implemented in ECMAScript. A port of Sauerbrauten.
- Castle Game Engine
Implemented in ObjectPascal. or later
Chili Source
Implemented in C++.
- Cocos2d
Implemented in Python.
Cocos2d-android
Implemented in Java.
- Cocos2d-X
Implemented in C++. Has ECMAScript, Lua and C++ scripting.
- DarkPlaces
Implemented in C. or later
- delta3d
Implemented in C++. Also useful for simulations. or later
- Doomsday
Implemented in C++. or later
- Duality
Implemented in C#.
- EasyRPG
Implemented in C++. Designed for JRPG-style games. or later
- ENIGMA
Implemented in C++. Has its own scripting language and . or later
- FIFE
Implemented in C++. Has Python scripting. Designed for isometric games. or later
- Fillwave
Implemented in C++. Has an easy graphics API.
Flambe
Implemented in Haxe. Designed for 2D games.
FLARE
Implemented in C++. Designed for action RPGs. or later
- Fluxus
Implemented in C++. Designed for livecoding worlds. or later
gamekit
Implemented in C++. Scripted using C++, Lua or logic blocks.
GamePlay
Implemented in C++.
- GDevelop
Implemented in C++. Targeted at non-programmers. (IDE is only.)
- GNU FreeDink
Implemented in C++. or later
- Godot
Implemented in C++. Has .
- Gosu
Implemented in C++. has a Ruby interface.
- Helm
Implemented in Haskell.
- HERITAGE
Implemented in ECMAScript. Designed for text adventure games. or later
- Horde3D
Implemented in C++.
ioquake3
Implemented in C. A fork of the Quake III Arena engine. or later
- Irrlicht
Implemented in C++. Has a .
- JMonkey
Implemented in Java.
- KivEnt
Implemented in Python.
LambdaHack
Implemented in Haskell, Designed for roguelikes.
litiengine
Implemented in Java, Designed for 2D games
- lycheejs
Implemented in ECMAScript. Designed for construction of HTML5 or native SDL games.
- Maratis
Implemented in C++. Has Lua for scripting. or later
- Moai
Implemented in C++. Has Lua for scripting.
- OctaForge
Implemented in C++. Has LuaJIT for scripting. Fork of Sauerbraten.
- Ogre3D
Implemented in C++. Has a .
- Orx
Implented in C.
- Oxygine
Implemented in C++.
- Panda3D
Implemented in C++. Has a Python interface.
- PlayN
Implemented in Java.
- Processing
Implemented in Java. Has its own scripting language. only
- Processing.js
Implemented in ECMAScript. Has its own scripting language.
qfusion
Implemented in C++. Designed for FPS games. or later
- Ren'Py
Implemented in Python. Designed for visual novels. , with some parts under only
- SGE
Implemented in Python. Designed for 2-D games
- SLUDGE
Implemented in C++. Has its own scripting language. only with the GTK Dev Kit or later
- Sly
Implemented in Guile. Uses functional reactive programming. or later
- Solarus
Implemented in C++. Comes with its own editor. Designed for RPGs. or later
Spearmint
Implemented in C. Designed for FPS games. or later
- Spring
Implemented in C++. Designed for RTS games. or later
- Torque2D
Implemented in C++. Has .
- Torque3D
Implemented in C++. Has .
Turbulenz
Implemented in ECMAScript.
- Urho3D
Implemented in C++. Scripted using AngelScript or Lua.
voxeliq
Implemented in C#. Designed for voxel world games.
Engines / HTML5
Engines / Physics
ammo.js
Implemented in ECMAScript. A port of Bullet.
- Box2D
Implemented in C++. Designed to simulate rigid body physics.
- Bullet
Implemented in C++. General physics engine.
- LiquidFun
LiquidFun is a 2D rigid-body and fluid simulation C++ library for games based upon Box2D.
- Matter.js
Implemented in ECMAScript. Physics engine for HTML5.
- ODE
Open Dynamics Engine; implemented in C++. Designed to simulate rigid body dynamics.
Oimo.js
Implemented in ECMAScript.
Physics.js
Implemented in ECMAScript.
Math
Hypatia
A pure-C math library for 2D/3D graphics (matrix, vector, quaternion) Seeks to be close to C89/C90 compliant for portability.
Fonts
- Google Fonts
A collection of freely-licensed fonts.
- Open Font Library
A collection of freely licensed fonts.
- ParaType Public Fonts for Minority Languages of Russia
Three freely-licensed fonts with support for many character sets.
- The League of Moveable Type
A collection of fonts with high standards.
Games / C
2048-cli
A CLI version of 2048. (code), no significant assets
2048-in-terminal
A CLI version of 2048. (code), no significant assets
Craft
A 3D voxel world game. (code and assets)
Curse of War
A fast-paced strategy game. or later (code and assets)
The Legend of Edgar
A 2D platform game with a persistent world. or later (code), various free culture licenses (assets)
FallingTime
An arcade game. or later (code), various CC (no NC or ND) (assets)
Taisei
(code and assets), only for one font
Turtle Arena
Third-person action game. or later (code), various free culture licenses (assets)
Wizznic
A puzzle game. or later (code and assets)
Games / C++
Battle for Wesnoth
A turn-based strategy game. or later (code and assets)
Blackvoxel
A voxel exploration and crafting game. or later (code and assets)
Clonepoint
or later (code), various CC (no NC or ND) (assets)
colobot
A robot-based strategy game. or later (code and assets)
Egooboo
A 3D dungeon crawler in the spirit of NetHack. or later(code and assets)
Endless Sky
3D space exploration game. or later (code), various CC (no NC or ND) (assets)
Freeminer
A 3D voxel world game. or later (code), (assets)
MegaGlest
A 3D RTS game. or later (code), (assets)
Minetest
A 3D voxel world game. or later (code), (assets)
Minilens
A cute puzzle platformer starring a cleaning robot on post-Apocalyptic Earth. Made with the Godot engine. or later (code), (assets)
- Monster 1
A JRPG-style game. (code and assets)
- Monster 2
A JRPG-style game. (code and assets)
- OpenClonk
A jump'n'run/settlement/combat game. (code), at most but mostly (assets)
OpenDungeons
A version of Dungeon Keeper. or later (code), various free culture licenses (assets)
Return of Dr. Destructo
An adventure game. (code), (assets)
SavageWheels
A car game. (code and assets)
Seven Kingdoms: Ancient Adversaries
A strategy game. or later (code and assets)
SuperTux
A platformer. or later (code), various free culture licenses (assets)
SuperTuxKart
A 3D racing game. or later (code), various free licenses (assets). (code), (assets)
The Powder Toy
A sandbox falling sand physics game. or later (code and assets)
- Übergame
A multiplayer, casual FPS game. (code), (assets)
Warzone 2100
An RTS sci-fi game. or later (code), various free culture licenses (assets)
Games / CoffeeScript
coffee-snake
A version of Snake. or later (code), no significant assets
Zop
A 'connect the dots' game. (code), no significant assets
Games / Dart
Hauberk
A roguelike. (code), no significant assets
Pop, Pop, Win!
A version of Minesweeper. (code and assets)
Games / ECMAScript
2048
The original, classic casual game. (code and assets)
A Dark Room
A text adventure game. (code), no significant assets
Blockrain.js
A version of Tetris. (code and assets)
BrowserQuest
An MMORPG. (code), (assets)
Clumsy Bird
A version of Flappy Bird. (code and assets)
Drunken Viking
A top-down puzzle game. (code), various CC (no NC or ND) (assets)
Freeciv-web
A port of Freeciv. or later and or later (code and assets)
ludum-dare-28
(code and assets)
Masonry-JavaScript-Tetris-Clone
Exactly what it says on the tin. (code and assets)
Parity
(code), no significant assets
Particle Clicker
An incremental game that teaches the history of high-energy particle physics. (code and assets)
Prism
A colour-matching game. (code), no significant assets
Roguish
A roguelike. (code and assets)
Snake
A version of Snake. (code), no significant assets
Sorades 13k
A scrolling shooter. (code and assets)
Space Crusade
A space game. (code), (assets)
Space Shooter
Simple space shooting game. (code)
Squirts
(code and assets)
Games / Java
- epic-inventor
An indie, side-scrolling RPG. only (code and assets)
- Ned et les maki
A 3D puzzle game. (code), (assets)
- Newton Adventure
A puzzle game. (code), various CC (no NC or ND) (assets)
PuzzleGame
A slider puzzle game. Uses Android port of Cocos2D engine. (code and assets)
Terasology
A 3D voxel world game. (code and assets)
Games / Other/Multiple
Cataclysm: Dark Days Ahead
A roguelike set in a post-apocalyptic world. (code), (assets)
DynaDungeons
A version of Bomberman. Uses Godot engine. or later (code), various CC (no NC or ND) (assets)
FLARE
A dark fantasy 2D RPG. Uses FLARE engine. or later (code), (assets)
Pioneer
A space exploration game. Implemented in C++ and Lua. only (code), (assets)
Source of Tales
An MMORPG. Scripted using Lua (implementation language unclear). or later (code), and (assets)
Tanks of Freedom
Pixed-based turn-based strategy. Uses Godot engine. (code and assets)
Teeworlds
Implemented in C and C++. (code), (assets)
Zero-K
An RTS game. Uses Spring engine. or later (code and assets)
Games / Python
- Bullet dodger
A fun and challenging mouse game where you must dodge bullets. only (code), various CC (no NC or ND) (assets)
- Hexoshi
Free-roaming Metroid-like. only (code), various CC (no NC or ND) (assets)
Mystic Mine
(code and assets)
- ReTux
A platformer. only (code), various free culture licenses (assets)
- RogueBox Adventures
A mix of classical roguelike and sandbox game. or later (code), various free culture licenses (assets)
Unknown Horizons
A real-time strategy simulation game. or later (code), (assets)
Graphics / Assorted
- Blender 3D Model Repository
User-submitted 3D models made with Blender. Various licenses, including free ones
- Blend Swap
A community of Blender artists and their work. Various licenses, all CC
- CanTree
Free online tree generator. Generates PNG files.
- Kator Legaz 3D Models
3D Models by of various subjects.
- mocapdata.com
A library of motion capture data. Various licenses, including free ones
- Yobi3D
A search engine for 3D models that aims to display license information when possible. Various licenses, including free ones
Graphics / Collections
- Free stuff by 7Soul1
A collection of various game-related assets. Available in PNG. Public domain
- openclipart
A collection of various clip art. Available in PNG. Public domain
- Remastered Tyrian graphics
A collection of pixel spreadsheets for a top-down shooter.
- Vecteezy
A collection of vector art. Various Creative Commons licenses
- ZipUp Free Game Elements
A collection of various graphical elements. Custom attribution license, free
Graphics / Icons
- FatCow
A set of 3900 colour icons in 16x16 and 32x32 pixel format.
Font Awesome
A large set of vector icons.
- Game-icons.net
A constantly-growing collection of black-and-white icons. Available in SVG or PNG.
IconFontCppHeaders
C and C++ headers for icon fonts , and
Kenney Game Icons
A font pack specifically designed for (browser) games and other gaming related websites/projects.
Material Design Icons
An official icon set from Google following specific guidelines.
- Tango Icon Library
An icon set project with a goal to create a consistent user interface. Public domain
Graphics / Sprites
- LPC Spritesheet Character Generator
A pixel-art RPG-style character spritesheet generator. Arts are dual licensed : and
- SpriteLib
A big collection of sprites. Available in PNG.
Graphics Tools / Animation
- Synfig Studio
A 2D animation tool. or later
Graphics Tools / Bitmap Compression
Graphics Tools / Editors
- Blender
A 3D modelling and rendering editor. or later
- GIMP
The GNU Image Manipulation Program. Designed for photo retouching, image composition and similar tasks. or later
- GrafX2
A bitmap paint program specialized for 256-color drawing. only
- Hme
A program for creating, manipulating and viewing height maps. or later
- Inkscape
A vector image editing program. only
- Krita
A digital painting and illustration program. or later
- MakeHuman
A tool for making 3D characters. or later
- MyPaint
A natural materials painting and drawing emulator. or later
- ngPlant
A 3D plant modelling software suite. or later
- NormalMapOnline
An online normal-mapping tool.
- Overlap2D
An engine-agnostic game level and UI editor.
- Pixelorama
2D pixel art editor with animation support.
- Synfig Studio
2D animation software. or later
- Tiled
Easy-to-use and flexible tile map editor. or later and
Graphics Tools / Mesh Tools
Graphics Tools / Procedural Generators
SpaceshipGenerator
A Blender script allowing generation of spaceships from a random seed and some parameters.
Graphics Tools / Spritesheet Tools
- Piskel
Online pixel art and animated sprite creator. or later
Graphics Tools / Texture Tools
AwesomeBump
A program that generates normal, height, specular or ambient occlusion, roughness or metallic textures. Requires a graphics card with support for OpenGL4 or greater. or later
Material Maker
Procedural texture generation tool for use with PBR engines.
- NeoTextureEdit
An easy-to-use, graph-based, procedural texture editor. No longer maintained. or later
- TextureGeneratorOnline
An online tool for texture generation.
Graphics Tools / Voxel Editors
- Sproxel
A 3D interface for quickly editing and creating voxel-based 3D models.
Learning Resources / Game Design
- School of Game Design, Wikiversity
A collection of learning resources for would-be game designers.
Learning Resources / Graphics
- Blender 3D: Noob to Pro
A Wikibook for learning how to make 3D graphics with Blender.
- Procedural Content Generation Wiki
A collection of articles about the use of procedural generation to make stuff in games.
Learning Resources / Music
- LibreMusicProduction
A community-driven online resource for promoting musical creation and composition using free tools.
Learning Resources / Programming
- Computer Science section on Saylor Academy
A collection of computer science courses. Many of these deal with useful concepts for game programming.
- Introduction to Mobile Game Development
Class on making simple mobile games with Gideros and Lua.
- An Introduction to Python
Pretty much what it says on the tin.
- Beginner 2d Game Programming Tutorial
(video) - A set of tutorials in 2D game programming, illustrated using ECMAScript.
- C++ Tutorial for Beginners
(video) - A collection of basic video tutorials for C++.
- Effective Go
A guide to writing good, clean and readable Go code for beginners. (text), (code)
- Functional Programming in JavaScript
(video) - A series of tutorials about functional programming concepts, illustrated using ECMAScript.
- Java Collections Framework
(video) - A set of tutorials for using Java collections properly.
- Java For Complete Beginners
(video) - A collection of basic video tutorials for Java.
- Lua Programming
A completed Wikibook on programming Lua.
- Practical Haskell - getting started with Stack
A series of tutorials designed to help people get started programming Haskell.
- pygame_stuff
A collection of code samples using PyGame. or later
- The GNU C Programming Tutorial
An introduction to programming in C by the nice GNU people. PDF.
- why's (poignant) Guide to Ruby
An interesting introductory book for Ruby.
- Advanced C++
(video) - A tutorial on advanced aspects of C++.
- Dive Into Python
A Python book for experienced programmers.
- Haskell
A very thorough Wikibook on programming Haskell.
- Haskell Tutorial for C Programmers
An introduction to Haskell for people coming from C-family languages.
- JavaFX Tutorial
(video) - A series of videos about how to use JavaFX to make GUIs.
- Java Multithreading
(video) - A series of videos about how to do multithreading work in Java.
Mostly adequate guide to functional programming (in JavaScript)
A book on the fundamentals of functional programming in ECMAScript.
- Structure and Interpretation of Computer Programs
A classic programming and teaching text. Designed for teaching Scheme, but can be useful to anyone writing in any language.
breakouts
A collection of ECMAScript implementations of Breakout.
- Haskell Programming
A complete wiki of the Haskell programming language.
- Joey Hess' blog
A collection of posts, many of which are about Haskell use.
Learning Resources / Talks
- GameDevRadio
(podcast) - A series of online radio shows devoted to entertaining and educating whoever is interested in game development.
- Indievelopment talks
(video) - A collection of talks about various aspects of game development.
Programming Frameworks and Libraries
ActionKid
A simple video game framework. Implemented in Haskell.
- Allegro 5
A cross-platform library for low-level tasks, like creating windows, accepting user input and so forth. Implemented in C and C++.
- Bacon2D
A framework to ease 2D game development, providing QML elements representing basic game entities. Implemented in C++.
bgfx
A 'build-your-own-engine' rendering library.
- Chipmunk2D
A fast and lightweight 2D game physics library. Implemented in C.
ChipmunkSharp
Advanced physics engine library based on Chipmunk. Implemented in C#.
- Cinder
A community-developed library for creative coding. Implemented in C++.
- ClanLib
A cross-platform toolkit with a primary focus on game creation. Implemented in C++.
- CutJS
A lightweight and fast 2D HTML5 rendering engine for cross-platform game development. Implemented in ECMAScript.
Dear ImGui
An Immediate Mode Graphical User interface for C++ with minimal dependencies
- enchant.js
A framework for developing simple HTML5 + ECMAScript games. Implemented in ECMAScript.
- EndGate
A framework for building HTML5 games. Implemented in TypeScript.
Epoxy
A library for handling OpenGL function pointer management. Implemented in C.
GameJs
A thin library on top of the Canvas API, including some helpful game development modules.
- Gideros
A cross-platform game development framework in Lua. Various licenses, all free
Gladiator3D
A raycasting engine. Implemented in ECMAScript.
- GLFW
A multi-platform library for OpenGL, OpenGL ES and Vulkan development on the desktop
- HaxeFlixel
A cross-platform development framework, supporting many targets. Implemented in Haxe.
- HaxePunk
A development framework designed to let you build games on any platform.
ImGuizmo
An immediate mode 3D gizmo for scene editing and other controls based on
Kcp
A fast and reliable ARQ protocol that helps fast-action games reduct network latency
- Kivy
Rapid-development library for multi-touch and visual apps on many platforms. Implemented in Python.
- Kuko
A cross-platform development library, designed for mobile devices. Implemented in C++ and Lua.
- libGDX
Cross-platform game development framework. Implemented in Java.
libRocket
An HTML/CSS-based UI library. Implemented in C++.
libSDL2pp
A set of C++11 bindings for SDL2. Implemented in C++.
- LimeJS
A framework for building fast HTML5 games. Implemented in ECMAScript.
- LoomSDK
A very large and powerful framework for cross-platform 2D game development. Implemented in C++.
- LÖVE
A framework for making 2D games. Implemented in Lua.
- LuaStudio
A cross-platform framework/development tool for making 2D/3D games. Lua/LuaJIT programming language based
- MINX
MINX Is Not XNA; a framework resembling XNA. Implemented in C++.
- p2.js
2D physics library. Implemented in ECMAScript.
pixi.js
A 2D rendering engine. Implemented in ECMAScript.
- Polycode
Framework for games and interactive applications. Implemented in C++. Has Lua bindings.
PyDark
Game framework on top of PyGame; designed to be easy to pick up. Implemented in Python.
- PyGame
A set of modules designed for writing games. Implemented in Python. or later
Quasi-Engine
A set of Qt-based tools for game development. Implemented in C++. or later
- raylib
Low-level library designed to learn videogames programming. Implemented in C, but has Lua and Go bindings
- SDL
Another cross-platform library for low-level tasks, like creating windows, accepting user input, and so forth. Implemented in C.
- SFML
Simple and Fast Multimedia Library; a multi-platform, multi-language, multimedia interface to various computer hardware. Implemented in C++. Has a .
- Slick2D
A set of tools to make 2D game development easier. Implemented in Java.
- Three.js
A library that makes WebGL easy to use. Implemented in ECMAScript.
Tracy
C++ frame profiler.
- voxel.js
A multi-component framework for bulding voxel games for modern browsers. Implemented in ECMAScript.
- ZenGL
A cross-platform game development library designed to provide necessary functionality for rendering 2D-graphics, handling input, sound output, etc. Implemented in Pascal.
Utilities
- Assimp
Open Asset Import Library; a portable way to import various well-known 3D model formats in a uniform manner. Implemented in C++, with a range of bindings.
Easel.js
Provides a range of tools to make working with the HTML5 Canvas API easier. Implemented in ECMAScript.
- Gmsh
A 3D finite-element grid generator with a built-in CAD engine and post-processor. or later
libcaca
An ASCII graphics rendering library for terminal-based interfaces.
- libnoise
A portable coherent noise-generation library. Implemented in C++. or later
- PhysicsFS
A library to provide abstract access to various archives.
- ScummVM
A program which allows you to run certain classic graphical point-and-click adventure games, provided you already have their data files. or later
Torsion
A TorqueScript IDE.
- TrenchBroom
A cross-platform level editor for Quake-engine-based games. Currently supports Quake, Quake 2 and Hexen 2 engine-based games. or later
- WorldForge
Provides everything needed to create your own free software MMORPG. or later (or a compatible license)
Nothing in this list matches your filter.
Featured in 2 awesome lists
Each link jumps to the spot where the list mentions awesome-gamedev.