Pipeline grafica

La pipeline grafica può essere modellizzata come una sequenza di unità di elaborazione separate da buffer di elementi. Ciclicamente, ciascuna unità di elaborazione preleva uno o più elementi dal buffer precedente, esegue su di essi un (breve) programma, crea nuovi elementi (che possono essere di tipo diverso) e li consegna al buffer successivo. Questa operazione è ripetuta finchè non ci sono più elementi nel buffer di origine.

Nei sistemi attuali, quasi tutta questa elaborazione viene eseguita dai driver, i quali a loro volta collocheranno la maggior parte possibile delle operazioni sulla GPU. Il programma utente si occupa solamente di inviare i dati iniziali al primo buffer, tramite opportune chiamate di funzione definite dal driver o dal sistema operativo. Questi dati comprendono i vertici e i loro attributi, le informazioni di connessione tra i vertici per formare i poligoni, le eventuali texture eccetera.

Il modello classico della pipeline grafica prevede qualcosa di questo tipo:

Schema teorico pipeline

Tuttavia, la seguente struttura è più simile alla reale implementazione:

Schema reale pipeline

Questa struttura è implementata di default all'interno della scheda video ed è chiamata "Fixed Function Pipeline".

Ci sono alcune importanti differenze, tra cui:


Copyright © 2011 Riccardo Monica
Eccetto ove espressamente indicato altrimenti, il contenuto di questa pagina è disponibile secondo la licenza Creative Commons Attribuzione - Condividi allo stesso modo 3.0.