La rivoluzione 3D

La metà degli anni ’90 segna un passaggio netto: la grafica per PC evolve dalla composizione 2D (spostamento di blocchi, riempimenti, copie in memoria video) al rendering 3D con prospettiva, illuminazione, gestione delle texture e profondità. Cambiano gli obiettivi funzionali: non basta più “disegnare rettangoli”, occorre calcolare una scena.

3dfx rende il salto immediatamente visibile all’utente con Voodoo Graphics (1996).

KL Diamond Monster3D Voodoo 1Diamond Monster 3D / 3DFx Voodoo 1 (Foto: Di Konstantin Lanzet, wikimedia)

La scheda nasce come acceleratore 3D dedicato: non fornisce il 2D e richiede un pass-through verso una VGA esistente. In cambio abilita, in hardware, elementi chiave del 3D (filtraggio, Z-buffer, mappatura prospettica delle texture, mipmapping), con un miglioramento percepibile in titoli come Quake e Tomb Raider.

Nel 1995, arriva un altro attore destinato a fare storia: NVIDIA. Il suo percorso parte con un tentativo non allineato agli standard emergenti (NV1, 1995) e trova maturità con RIVA 128 (1997): 2D + 3D integrati, supporto AGP e compatibilità apprezzata dagli sviluppatori. Seguono TNT e TNT2, che consolidano la pipeline e introducono in modo diffuso il colore a 32 bit con driver più stabili. 

ELSA Erazor II Nvidia Riva TNTVideo card ELSA Erazor II with Nvidia Riva TNT, 16 MB RAM (Foto: Jana.Wiki - Opera propria, CC BY-SA 3.0, via wikimedia)

Con Voodoo2 (1998) arriva lo SLI (Scan-Line Interleave): due schede che alternano le linee d’immagine per incrementare sensibilmente le prestazioni. L’upgrade grafico diventa, di fatto, un “rito” per i giocatori PC.

I limiti emergono quando il mercato richiede soluzioni “tutto in uno”: 3dfx introduce Banshee e poi Voodoo3 per integrare il 2D, ma i cicli di prodotto e le finestre commerciali diventano meno favorevoli. L’acquisizione del partner STB irrigidisce i rapporti con il canale.

vodooo33DFx Voodoo3

Nel 2000 gli asset di 3FDx passano a NVIDIA segnando la fine di un’epoca, e affiancandosi alla GeForce 256 (1999) che introduce il termine GPU e, soprattutto, sposta trasformazioni e illuminazione (T&L) in hardware: la geometria passa dalla CPU alla scheda video.

Con GeForce3 (2001) arrivano gli shader programmabili (DirectX 8), aprendo all’idea che il rendering sia anche codice eseguito sulla GPU.

Parallelamente, ATI costruisce la propria posizione con una sequenza di prodotti che attraversano la transizione: dopo le Rage e Rage 128, Radeon inaugura il confronto diretto con NVIDIA.

L’attenzione alla qualità d’immagine (anisotropico, antialiasing) e la progressione architetturale portano alla Radeon 9700 Pro (serie R300, 2002), un punto di svolta per prestazioni e flessibilità, con margini di crescita significativi anche tramite driver. Da qui in avanti il mercato consumer vive un ciclo competitivo serrato: ogni generazione risponde alla precedente, DirectX si evolve rapidamente e OpenGL rimane il riferimento nel professionale.

ATI Radeon 9700 ProATI Radeon 9700 Pro (Foto: Bloodshedder - Pubblico Dominio)

Il contesto è completato da traiettorie “laterali” rilevanti:

  • Matrox con G400 (1999) unisce qualità 2D a innovazioni 3D come EMBM (bump mapping per pixel) e introduce DualHead per il multimonitor ben integrato. Con Parhelia (2002) tenta l’approccio “tutto di più” (ampia banda, più uscite, qualità colore), senza però consolidare la leadership prestazionale.
  • S3 porta con Savage la compressione texture (S3TC), destinata a diventare uno standard di fatto nell’industria.
  • PowerVR (VideoLogic/ST) propone un’architettura tile-based/deferred (es. Kyro) che ottimizza l’uso della memoria evitando di processare pixel non visibili.
  • 3Dlabs e altri attori presidiano il professionale, trasferendo poi parte delle competenze nel consumer.

Nel 2002 ATI Radeon 9700 Pro (R300) segna un salto qualitativo nella resa e nella flessibilità del rendering; da qui in avanti il progresso avviene soprattutto via programmabilità. Nel 2006–2007 le API e le GPU si allineano: Direct3D 10 introduce una pipeline modernizzata e shader model 4.0 (vertex, geometry, pixel) interamente in HLSL, ponendo le basi della programmazione “a shader” come norma per i giochi PC.

Nel 2007 arriva il cambio di prospettiva: CUDA di NVIDIA apre la strada al GPGPU (General-Purpose computing on Graphics Processing Units), ossia all’uso della GPU per calcoli paralleli non grafici (scientifici, media, poi machine learning).

L’idea di “GPU = molti core in parallelo” esce dal mondo accademico e diventa una piattaforma software stabile, con toolchain e librerie. In pochi anni il concetto di compute shader e l’uso general-purpose della GPU entrano nel lessico comune degli sviluppatori.

Free Joomla templates by Ltheme