Il Wolfenstein 3D engine (noto anche come id Tech 0[3]) è un motore grafico sviluppato, per la maggior parte, da John Carmack di id Software. Fu utilizzato per la prima volta nel gioco Wolfenstein 3D del 1992,[4] e in seguito utilizzato in licenza da altre compagnie. Il codice sorgente è stato reso disponibile il 21 luglio del 1995,[5] e in seguito sono stati realizzati alcuni port atti a migliorarne le prestazioni.
Storia
Creazione
Il motore grafico è stato scritto da John Carmack, durante i primi mesi di id Software, nel 1991.[6] Le intenzioni di id furono di rendere il motore ottimizzato su Intel 80286,[2] con il supporto per lo standard all'epoca più diffuso, che era EGA; solo successivamente sarebbe stato aggiornato per funzionare anche su VGA.[6] Un prototipo, privo di texture mapping, venne usato per Hovertank 3D, e una versione più evoluta (ma sempre a 16 colori) per Catacomb 3-D. Rispetto ad altri motori grafici della stessa epoca, come quello tecnicamente superiore di Ultima Underworld: The Stygian Abyss, il W3D engine era notevolmente più veloce, e non necessitava di hardware particolarmente potente per funzionare.[4]
Eredità
Il W3D engine ha avuto il suo peso e la sua importanza, sia nella storia dei videogiochi che in quella della computer grafica.[7] Da questo motore sarebbero stati sviluppati infatti il Doom Engine, Quake engine e successivamente l'id Tech 2,[4] avvicinando sempre di più i videogiochi alla rivoluzione della tridimensionalità sfociata da metà anni 90 in poi.[4]IGN ha inserito Wolfenstein 3D nella lista dei 100 migliori sparatutto, all'11º posto; ritenendo, il passaggio dal 2D allo pseudo-3D del motore grafico, una vera "metamorfosi" epocale e direttamente o indirettamente responsabile della nascita dei successivi sparatutto in prima persona.[4][7]
Il funzionamento del ray casting è simile a quanto accade nell'occhio umano, ma inverso: le immagini percepite dagli occhi, sono create da raggi di luce riflessi dall'ambiente circostante, che formano una figura nella retina;[8] nel gioco Wolfenstein 3D, si verifica il contrario dato che i raggi vengono generati dalla visuale del giocatore e, man mano che si espandono nello scenario di gioco, intersecano un ostacolo creando un'immagine pseudo-3D.[8] La mappa in cui il giocatore si muove svolge dunque un ruolo altrettanto importante: in origine il livello è bidimensionale, costruito da celle texturizzate a 64×64,[6][8] quando sulla mappa 2D, viene rivelata la posizione del giocatore e la sua visuale, il gioco restituisce un'immagine pseudo-tridimensionale, con blocchi o "cubi" da 64×64×64.[8] Essendo perciò, di partenza, un motore comunque basato sulla bidimensionalità, la visuale non può essere mossa sull'asse Y del sistema di riferimento cartesiano - è possibile infatti muovere il cono visivo solo sull'asse X, da destra a sinistra o viceversa.[6][8]