Aller au contenu principal
Dossier · Technique

Les innovations.

Ce qui a fait la réputation de Carmack : des solutions d'ingénierie qui ont fait avancer tout un secteur.

Défilement · 1990

Adaptive tile refresh

Une technique qui ne redessine que les tuiles modifiées de l'écran, rendant possible un défilement latéral fluide sur PC — le socle de Commander Keen.

Rendu · 1992

Ray casting texturé

Dans Wolfenstein 3D, un rendu par lancer de rayons simplifié projette des murs texturés en temps réel : l'illusion de la 3D à la première personne sur des machines modestes.

Rendu · 1993

Partitionnement binaire (BSP)

Dans Doom, l'arbre BSP trie les surfaces pour un affichage rapide de niveaux complexes, avec dénivelés et éclairages — et un format de données ouvert au modding.

Rendu · 1996

Surface caching & vraie 3D

Quake franchit le pas de la 3D polygonale temps réel ; le cache de surfaces combine géométrie et éclairage pré-calculé pour un rendu riche et rapide.

Ombres · 2004

« Carmack's Reverse »

Une variante robuste de la technique des volumes d'ombre (depth-fail), employée dans Doom 3 pour des ombres portées dynamiques fiables.

Textures · 2011

MegaTexture (texturage virtuel)

Dans Rage (id Tech 5), une texture unique et gigantesque, chargée à la demande, habille tout un monde sans répétition visible.

L'ouverture du code

Au-delà des algorithmes, la contribution la plus durable de Carmack tient peut-être à sa constance : faire publier, des années après leur sortie commerciale, le code source des moteurs d'id Software. Cette pratique a permis la préservation des jeux, d'innombrables portages (jusque sur des calculatrices ou des grille-pain, selon la blague consacrée) et l'apprentissage de générations de programmeurs.

L'ouverture s'est faite par étapes. La toute première publication, celle de Wolfenstein 3D en 1995, était assortie d'une licence restrictive réservée à l'usage éducatif, sans droit de redistribution. C'est avec Doom, passé sous GPL en 1999, que la licence libre devient la règle. Carmack l'explique lui-même dans le fichier readme.txt de Quake : les publications précédentes interdisaient l'exploitation commerciale mais n'obligeaient personne à partager ses modifications, ce qui a fait perdre à la communauté le code de plusieurs mods.

Où trouver le code

Les dépôts officiels sont réunis sur le compte GitHub d'id Software. Licences et dates vérifiées dans les dépôts eux-mêmes.

1995 · licence restrictive

Wolfenstein 3D

La première ouverture, et la seule qui ne soit pas libre : le LICENCE.DOC du dépôt est un « Limited Use Software License Agreement » limitant le code à un usage éducatif, sans redistribution.

Visiter le lien →
1997, puis GPLv2 en 1999

Doom

Publié fin 1997 sous licence non commerciale, puis reversé sous GPL en 1999. C'est le dépôt le plus suivi d'id Software et le point de départ de la plupart des ports.

Visiter le lien →
22 décembre 1999 · GPL

Quake

Contient WinQuake, GLQuake et QuakeWorld. Le readme.txt signé Carmack expose le raisonnement derrière le choix de la GPL.

Visiter le lien →
21 décembre 2001 · GPLv2

Quake II

Le moteur qui généralise l'accélération matérielle OpenGL. Les outils de développement font l'objet d'un dépôt séparé, Quake-2-Tools.

Visiter le lien →
19 août 2005 · GPLv2

Quake III Arena

Base de nombreux jeux libres autonomes (OpenArena, Tremulous, Urban Terror). C'est aussi le code où figure la fameuse racine carrée inverse rapide.

Visiter le lien →
22 novembre 2011 · GPLv3

Doom 3

Annoncé par Carmack lors de la QuakeCon 2011. Moteur id Tech 4, celui des ombres portées volumétriques et de la « Carmack's Reverse ».

Visiter le lien →
2012 · GPLv3

Doom 3 BFG Edition

Version révisée du moteur id Tech 4, dernière publication majeure de code faite du temps de Carmack chez id Software.

Visiter le lien →
Le reste des dépôts

Le compte id Software

Une vingtaine de dépôts au total : Return to Castle Wolfenstein et Enemy Territory (GPLv3), les portages iOS de Doom et Wolfenstein, l'éditeur GtkRadiant et les outils de développement des Quake.

Visiter le lien →

Citer cette page

Archive John Carmack, « Les innovations techniques de John Carmack », mise à jour du 15 août 2026, https://carmack-archive.com/technique (consulté le [date]).