Adaptive tile refresh
A technique that redraws only the tiles that changed, making smooth side-scrolling possible on the PC — the foundation of Commander Keen.
What made Carmack's reputation: engineering solutions that moved an entire industry forward.
A technique that redraws only the tiles that changed, making smooth side-scrolling possible on the PC — the foundation of Commander Keen.
In Wolfenstein 3D, a simplified ray-casting renderer projects textured walls in real time: the illusion of first-person 3D on modest machines.
In Doom, a BSP tree sorts surfaces to draw complex levels quickly, with height changes and lighting — and a data format open to modding.
Quake makes the leap to real-time polygonal 3D; surface caching combines geometry with pre-computed lighting for a rich, fast render.
A robust variant of the shadow-volume technique (depth-fail), used in Doom 3 for reliable dynamic cast shadows.
In Rage (id Tech 5), a single, enormous texture streamed on demand covers an entire world with no visible repetition.
Beyond the algorithms, Carmack's most lasting contribution may be his consistency: releasing the source code of id Software's engines years after their commercial run. That practice enabled the preservation of the games, countless ports (down to calculators and toasters, as the running joke goes), and the education of whole generations of programmers.
The opening happened in stages. The very first release, Wolfenstein 3D in 1995, came with a restrictive licence limited to educational use, with no right of redistribution. It was Doom, relicensed under the GPL in 1999, that made free licensing the rule. Carmack set out the reasoning himself in the readme.txt of Quake: earlier releases barred commercial exploitation but forced no one to share their changes, and the community lost the sources of several mods as a result.
The official repositories are gathered on id Software's GitHub account. Licences and dates verified in the repositories themselves.
The first opening, and the only one that is not free software: the repository's LICENCE.DOC is a "Limited Use Software License Agreement" restricting the code to educational use, with no redistribution.
Released in late 1997 under a non-commercial licence, then relicensed under the GPL in 1999. It is id Software's most-followed repository and the starting point of most ports.
Open link →Contains WinQuake, GLQuake and QuakeWorld. The readme.txt signed by Carmack lays out the reasoning behind the choice of the GPL.
The engine that generalised OpenGL hardware acceleration. Its development tools live in a separate repository, Quake-2-Tools.
Open link →The basis of several standalone free games (OpenArena, Tremulous, Urban Terror). It is also the code that carries the famous fast inverse square root.
Open link →Announced by Carmack at QuakeCon 2011. The id Tech 4 engine, home of volumetric shadows and "Carmack's Reverse".
Open link →A revised version of the id Tech 4 engine, and the last major code release made during Carmack's time at id Software.
Open link →Around twenty repositories in total: Return to Castle Wolfenstein and Enemy Territory (GPLv3), the iOS ports of Doom and Wolfenstein, the GtkRadiant editor and the Quake development tools.
Open link →Cite this page
John Carmack Archive, "John Carmack's Technical Innovations", updated 15 août 2026, https://carmack-archive.com/en/tech (accessed [date]).