USA · Born 1970 · id Software · Programmer / Engine Architect
John Carmack wrote the rendering engines behind Wolfenstein 3D, Doom, and Quake, inventing the technical foundations of the first-person shooter and advancing real-time 3D graphics by a decade.
John Carmack grew up in Kansas City and was writing assembly language code by his early teens, displaying a mathematical aptitude that would define his career. After a brief and miserable stint at the University of Missouri-Kansas City, he took a programming job at Softdisk, a Shreveport-based disk magazine publisher, where he met John Romero, Tom Hall, and Adrian Carmack (no relation). The four left Softdisk in 1991 — taking the company's computers on a weekend, an incident that Softdisk nearly litigated — to form id Software. Carmack's first major achievement was Commander Keen (1990), written while still at Softdisk: a side-scrolling platformer for IBM PCs that used adaptive tile refresh to achieve smooth scrolling on hardware that Nintendo's designers had declared incapable of it. The technique, invented over a single weekend, demonstrated that Carmack's approach to graphics problems was to treat any supposed hardware limitation as an engineering challenge rather than a constraint. Carmack's engine work on Wolfenstein 3D (1992) created the template for the first-person shooter: a pseudo-3D raycasting engine that projected a 2D grid map into the illusion of three-dimensional corridors at playable frame rates on consumer PCs. The engine was technically simpler than true 3D but sufficiently convincing that players experienced genuine spatial immersion. Doom (1993) replaced the raycaster with a true BSP (Binary Space Partition) rendering engine that supported variable floor heights, non-orthogonal walls, and dynamic lighting — a generational leap in visual complexity achieved on the same consumer hardware. Doom also pioneered online multiplayer over LAN and modem, and its shareware distribution model — the first episode free, the full game mail-order — established a commercial template that antedated modern free-to-play by two decades. Quake (1996) completed Carmack's transition to fully polygonal 3D worlds with real-time lighting, moving away from the sprite-based enemies of Doom toward polygon models that could be viewed from any angle. The Quake engine supported client-server networked multiplayer natively, enabling the organised tournament and "clan" culture that became the foundation of competitive online gaming. Carmack released the source code of Wolfenstein 3D, Doom, and Quake as each successive engine became outdated, spawning thousands of independent mods and total conversions that trained an entire generation of game developers. His subsequent work on Quake II (1997), Quake III Arena (1999), and Doom 3 (2004) continued pushing rendering technology, with Quake III's Q3A engine becoming one of the most widely licensed bases for third-party games of the early 2000s. Carmack left id Software in 2013 to become CTO of Oculus VR, where he worked on the technical foundations of the Oculus Rift and Quest headsets before departing in 2022. His influence on the games industry is primarily technical: the BSP algorithm, the portal rendering technique, the radiosity lighting approaches, and the client-server networking architecture he pioneered in the early 1990s underpinned game engine development for the next twenty years. His practice of releasing source code made id Software's engines the educational foundation for a generation of engine programmers, many of whom went on to found studios producing the most commercially significant games of the 2000s and 2010s.