Carmack has pioneered or popularized the use of many techniques in computer graphics, including "adaptive tile refresh" for Commander Keen, ray casting for Hovertank 3D, Catacomb 3-D, and Wolfenstein 3D, binary space partitioning which Doom became the first game to use, surface caching which he invented for Quake, Carmack's Reverse (formally known as z-fail stencil shadows) which he devised for Doom 3, and MegaTexture technology, first used in Enemy Territory: Quake Wars.