Awesome Gamedev
A curated list of good stuff related to the development of games. This list contains only free software for code, sellers who aren't evil for physical resources, and free cultural works for assets.
I have also provided a list of resources which are not free, and the reasons why, in the associated Wall of Shame file.
This is released under the GNU Free Documentation License, without invariants or a cover - its text is provided in the LICENSE file.
Table of Contents
Assorted Assets
This contains collections of miscellaneous assets of different kinds.
Audio
Editors
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.
- Incompetech - An artist providing royalty free music of all genres. CC-BY-3.0.
- 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.
Sound Effects
Engines
These are full-blown game engines.
General
By Language
C ++
Unsorted
HTML5
Unless stated otherwise, these engines are implemented in ECMAScript.
Physics
Fonts
Games
These are meant to serve as examples for your own work, or foundations to built upon.
I have endeavoured to provide both code and asset licenses here - if no asset license is listed, assume it to be non-free or questionably-free. These entries may be removed upon clarification.
C
C++
- Battle for Wesnoth - A turn-based strategy game. GNU GPLv2 (code and assets).
- Blackvoxel - A voxel exploration and crafting game. GNU GPLv3 (code and assets).
- Clonepoint - GNU GPLv3 (code), various CC (no NC or ND) (assets).
- colobot - A robot-based strategy game. GNU GPLv3 (code and assets).
- Egooboo - A 3D dungeon crawler in the spirit of NetHack. GNU GPLv3 (code and assets).
- endless-sky - 3D space exploration game. GNU GPLv3 (code), various CC (no NC or ND) (assets).
- Freeminer - A 3D voxel world game. GNU GPLv3 (code), CC-BY-SA-3.0 (assets).
- Megaglest - A 3D RTS game. GNU GPLv3 (code), CC-BY-SA-3.0 (assets).
- Minetest - A 3D voxel world game. GNU GPLv2 (code), CC-BY-SA-3.0 (assets).
- Monster 1 - A JRPG-style game. 3-clause BSD (code and assets).
- Monster 2 - A JRPG-style game. zlib (code and assets).
- OpenDungeons - A version of Dungeon Keeper. GNU GPLv3 (code), various free culture licenses (assets).
- SavageWheels - A car game. Expat (code and assets).
- Seven Kingdoms: Ancient Adversaries - A strategy game. GNU GPLv2 (code and assets).
- Stunt Rally - A 3D racing game. GNU GPLv3 (code), various free culture licenses (assets).
- Supertux - A platformer. GNU GPLv3 (code), various free culture licenses (assets).
- SuperTuxKart - A 3D racing game. GNU GPLv3 (code), various free licenses (assets).
- The Powder Toy - A sandbox falling sand physics game. GNU GPLv3 (code and assets).
- Warzone 2100 - An RTS sci-fi game. GNU GPLv2 (code), various free culture licenses (assets).
CoffeeScript
- coffee-snake - A version of Snake. GNU GPLv3 (code), no significant assets.
- Zop - A 'connect the dots' game. Expat (code), no significant assets.
Dart
ECMAScript
Java
Other/Multiple
Python
Graphics
Assorted
This is a section for everything else that doesn't fit in some other graphics category.
- Blender 3D Model Repository - User-submitted 3D models made with Blender. Various licenses, including free ones.
- CanTree - Free online tree generator. Generates PNG files. Expat .
- Kator Legaz 3D Models - 3D Models by of various subjects. CC-BY-3.0 .
- 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.
Collections
This category contains any 'grab-bags' of different kinds of art assets.
- 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.
- Vecteezy - A collection of vector art. Various Creative Commons licenses.
Icons
- Game-icons.net - A constantly-growing collection of black-and-white icons. Available in SVG or PNG. CC-BY-3.0 .
- Tango Icon Library - An icon set project with a goal to create a consistent user interface. Public domain.
Sprites
Graphics Tools
Animation
Bitmap Compression
- pngquant - A command-line utility for lossy compression of PNG images. Has various front-ends available. FreeBSD.
- Trimage - A cross-platform tool for losslessly optimizing PNG and JPG files. Expat.
Editors
Mesh Tools
- MeshLabs - A portable system for the processing and editing of unstructured 3D triangular meshes. GNU GPLv2.
Spritesheet Tools
Texture Tools
Voxel Editors
Learning Resources
These are all collections of information to help you learn about things that might be necessary for developing games.
We aim for complete and current resources here whenever possible.
Graphics
Beginner
Music
Programming
Beginner
Intermediate
Reference
Talks
These are collections of game development-related talks, podcasts etc. that might be interesting or informative to people seeking to design games.
- GameDevRadio (podcast) - A series of online radio shows devoted to entertaining and educating whoever is interested in game development. CC-BY-SA-4.0.
- Indievelopment talks (video) - A collection of talks about various aspects of game development. CC0.
Programming Frameworks and Libraries
These are programming libraries or low-level code-based tools which are designed to support game programming, but do not provide as much structure or support as an engine would.
- ActionKid - A simple video game framework. Implemented in Haskell. 3-clause BSD .
- Allegro 5 - A cross-platform library for low-level tasks, like creating windows, accepting user input and so forth. Implemented in C and C++. 3-clause BSD .
- Bacon2D - A framework to ease 2D game development, providing QML elements representing basic game entities. Implemented in C++. Expat .
- bgfx - A 'build-your-own-engine' rendering library. FreeBSD .
- Chipmunk2D - A fast and lightweight 2D game physics library. Implemented in C. Expat .
- ChipmunkSharp - Advanced physics engine library based on Chipmunk. Implemented in C#. Expat .
- Cinder - A community-developed library for creative coding. Implemented in C++. FreeBSD .
- ClanLib - A cross-platform toolkit with a primary focus on game creation. Implemented in C++. ClanLib license .
- CutJS - A lightweight and fast 2D HTML5 rendering engine for cross-platform game development. Implemented in ECMAScript. Expat .
- enchant.js - A framework for developing simple HTML5 + ECMAScript games. Implemented in ECMAScript. Expat .
- EndGate - A framework for building HTML5 games. Implemented in TypeScript. Expat .
- GameJs - A thin library on top of the Canvas API, including some helpful game development modules. Expat .
- Gladiator3D - A raycasting engine. Implemented in ECMAScript. Expat .
- HaxeFlixel - A cross-platform development framework, supporting many targets. Implemented in Haxe. Expat .
- Kivy - Rapid-development library for multi-touch and visual apps on many platforms. Implemented in Python. Expat .
- libGDX - Cross-platform game development framework. Implemented in Java. Apache 2.0 .
- libRocket - An HTML/CSS-based UI library. Implemented in C++. Expat .
- libSDL2pp - A set of C++11 bindings for SDL2. Implemented in C++. 3-clause BSD .
- LimeJS - A framework for building fast HTML5 games. Implemented in ECMAScript. Apache 2.0 .
- LoomSDK - A very large and powerful framework for cross-platform 2D game development. Implemented in C++. Apache 2.0 .
- LÖVE - A framework for making 2D games. Implemented in Lua. zlib .
- MINX - MINX Is Not XNA; a framework resembling XNA. Implemented in C++. 3-clause BSD .
- p2.js - 2D physics library. Implemented in ECMAScript. Expat .
- pixi.js - A 2D rendering engine. Implemented in ECMAScript. Expat .
- Polycode - Framework for games and interactive applications. Implemented in C++. Has Lua bindings. Expat .
- PyDark - Game framework on top of PyGame; designed to be easy to pick up. Implemented in Python. Expat .
- PyGame - A set of modules designed for writing games. Implemented in Python. GNU LGPLv2 .
- Quasi-Engine - A set of Qt-based tools for game development. Implemented in C++. GNU GPLv3 .
- SDL - Another cross-platform library for low-level tasks, like creating windows, accepting user input, and so forth. Implemented in C. zlib .
- SFML - Simple and Fast Multimedia Library; a multi-platform, multi-language, multimedia interface to various computer hardware. Implemented in C++. Has a range of bindings . 3-clause BSD .
- Slick2D - A set of tools to make 2D game development easier. Implemented in Java. 3-clause BSD .
- Three.js - A library that makes WebGL easy to use. Implemented in ECMAScript. Expat .
- voxel.js - A multi-component framework for bulding voxel games for modern browsers. Implemented in ECMAScript. 3-clause BSD .
Utilities
This is a catch-all category for things that don't fit anywhere else.
- 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. 3-clause BSD .
- Easel.js - Provides a range of tools to make working with the HTML5 Canvas API easier. Implemented in ECMAScript. Expat .
- gmsh - A 3D finite-element grid generator with a built-in CAD engine and post-processor. GNU GPLv2 .
- libcaca - An ASCII graphics rendering library for terminal-based interfaces. WTFPLv2.
- libnoise - A portable coherent noise-generation library. Implemented in C++. GNU LGPLv2 .
- Monkey - A next-generation games programming language. Implemented in C++. zlib .
- PhysicsFS - A library to provide abstract access to various archives. zlib .
- ScummVM - A program which allows you to run certain classic graphical point-and-click adventure games, provided you already have their data files. GNU GPLv2 .
- WorldForge - Provides everything needed to create your own free software MMORPG. GNU GPLv3 (or a compatible license).
#[108]: FREE
#[146]: FREE
#[316]: FREE