
Free game engine

Free game engines are game engines that are free software. While some game-engines make their source code viewable to the public, the code might not be freely redistributable, which is one of the criteria for the definition of open-source software. Such engines are instead referred to as source available, Unreal Engine and Defold are notable examples. Game engines can be made open source by for-profit companies wanting to demonstrate the capabilities of an underlying technology, or by independent developers looking for code contributions to their own engine while focusing on game development.
Advantages and disadvantages.
Open source game engines do not require licenses or subscription fees from the engine’s developer. Developers do not have to worry about changing licensing terms or increased subscription fees. Any developer with sufficient skills can also customize the game engine to tailor their needs and contribute to the code base with bug fixes and improvements. A consequent advantage is reduced development costs for companies releasing an open source game engine, as it can leverage the wider community of contributors to improve its engine. Moreover, since game development requires high-performance hardware, using open source engines can reduce hardware costs. Patented game engines run the risk of being locked in by a vendor or technology, while open source game engines give game developers the flexibility to customize and experiment.
One disadvantage of open source game engines is that, like for other kinds of open source software, it might be difficult to build a viable business model around them. Popular closed-source game engines like Unity rely on subscription fees based on the revenue of games built with the engine. Open source game engines, on the other hand, need to rely on community contributions and corporate grants. Another disadvantage is that even the most popular open source game engines like Godot have smaller communities and fewer assets and plugins available than proprietary engines like Unity or Unreal. Lastly, supporting console game publishing is harder for open source game engines. Developing for consoles requires a company license, which open source projects typically do not have. Furthermore, the code written to support consoles cannot be made open source as development kits are covered by non-disclosure agreements. Game developers can instead rely on a third-party developer to make the console port in exchange for a fee.
Notable examples.
Godot.
In 2014 the multi-platform game engine Godot was made open source under the MIT license, after 7 years of development. Development for Godot is spearheaded by a team of part-time and full-time developers relying on community donations through Patreon and grants and awards from companies.
Turbulenz.
In 2013, Turbulenz became the first open source 3D Javascript game engine. The company behind it wanted to offer an end-to-end platform to create, monetize and publish HTML5 games. By making its game engine open source, Turbulenz wanted to drive up the quality of HTML5 games in general.
libGDX.
The game-engine libgdx was originally developed by Mario Zechner as a framework to write Android games and was made open source in 2010. The game-engine eventually became multi-platform, with support for WebGL and most desktop and mobile operating systems
GDevelop.
GDevelop was created by Florian Rival, a software engineer at Google aiming to make “game creation accessible to anyone” and saw its 1.0 release in 2008. The game engine employs visual programming to facilitate game creation and has been adopted as a tool to introduce students to game development. GDevelop was later ported to WebAssembly and is now capable of running completely inside of a browser
id Tech 4.
id Tech 4, also known as Doom 3 engine, was developed by John Carmack after completing the Quake 3 Arena in 1999. The main technological innovation of the id Tech 4 engine was unified lighting and shadowing that used separated types of lighting for static and dynamic elements. This is the last game-engine to be made open source by id Software, whose id Tech 1, 2, 3 and 4 had been published under the GNU license. John Carmack, who advocates open source software, had stated his intention to also make the subsequent id Tech 5 open source, but resigned from id Software in 2013 with id Tech 5 remaining proprietary software.
Armory.
Armory is a free for all open source 3D engine built to run inside of Blender and programmed using both logic nodes or the Haxe programming language. The engine is focused on portability, minimal footprint and performance. Armory engine is distributed under the zlib license, which allows the development of closed-source games for commercial purposes. Armory can run on Windows, Linux and macOS, and is available for developing game projects for desktop, web, mobile and consoles
Openage.
Openage is a volunteer project to create a free cross-platform RTS game engine clone of the Genie Engine used by Age of Empires, Age of Empires II (HD) and . The engine uses C++17, OpenGL/GLSL, Python, Qt5 and CMake to develop game projects for GNU/Linux, BSD, macOS or Windows. Openage provides more features for modding and multiplayer than the original engine. It uses an open API powered by human-readable configuration language nyan. Also, Openage implements a client-server architecture with dedicated servers that supports more than 8 players. However, there is no network, nor binary compatibility with the original Age of Empire games