Prima Parte


Grafica Vettoriale, Bitmap e bit



Il rendering questa magia! E' proprio questo quello che avevo pensato quando per la prima volta partecipai ad una dimostrazione di una scheda grafica acceleratrice ( la famosa Targa ) basata su sistema Dos e processore 486 a 66 MHz con 16 megabyte di ram, il software era il neonato 3d studio alla prima versione. La cosa più strana è che l'oggetto dell'applicazione del rendering, nonostante l'entusiasmo del dimostratore, fosse una semplice sfera. In fase dimostrativa ci fu fatto notare come il risultato della luce applicata tramite uno spot ,generasse un ombra con sfumatura graduale sulla superficie della sfera stessa, il tutto per merito del nuovo sistema grafico a 24 bit della scheda Targa ( .tga), nonché la velocità di elaborazione, che a quel tempo era di 5 secondi per generare un rendering di una sfera con algoritmo di Phong, fosse estremamente ridotta. Naturalmente per elaborare un modello architettonico 3d generato da Autocad si richiedeva un tempo maggiore, e cosi i tempi di attesa per un rendering di buona qualità lievitavano a 4 ore o anche intere giornate. Era il 1989 e l'elaborazione grafica entrava nel mercato "User PC" cercando di rincorrere i risultati ottenuti dalle workstation grafiche avanzate come Silicongraphic e Sun, vendute a prezzi inaccessibili.

Il problema a quei tempi era come ottimizzare il peso del modello e della relativa scena per ridurre drasticamente i tempi di elaborazione, facendo presente che per ottenere un immagine di alta qualità bisognava generare un file bitmap di almeno due milioni di Pixel.
La differenza da un immagine Bitmap tipica di 3dstudio e un disegno vettoriale tipico di Autocad è nel sistema grafico utilizzato.
Il formato bitmap è generato da una matrice di punti ( mappa di bit ), può essere paragonato al sistema di visualizzazione del televisore o del monitor dove l'immagine è composta da una serie di pixel ( fosfori ).Il sistema Pal è composto da una matrice 720 x 576 punti quindi da 414.720 pixel ma le risoluzione dell'immagine bitmap possono essere di diversa forma e grandezza, la dimensione del file è proporzionale al numero di pixel presenti. Ad ogni cella può essere assegnato un colore differente scelto su una tavolozza colori del sistema grafico. I vecchi sistemi grafici erano ad 8 bit, questo voleva dire che la tavolozza non poteva contenere più di 256 colori, il bit è la singola informazione digitale con cui il computer trasmette le informazioni e può essere paragonato ad un interruttore acceso e spento ( 0 , 1 ). L'informazione contenuta è determinata dalle possibili combinazioni di questi interruttori, nel caso di un bit potremmo avere solo due combinazioni( acceso o spento), quindi 2 colori ( in genere Bianco o nero ), 8 bit generano 256 combinazioni, 16 bit ne generano 65.536 , e infine 24 bit danno 16,8 milioni di combinazioni e quindi altrettanti colori da poter utilizzare nella nostra matrice, generando così una sfumatura omogenea del campo cromatico, vi ricordate il rendering della sfera nella dimostrazione del sistema grafico a 24 bit ?

Ma purtroppo il sistema bitmap rimane un formato molto pesante in quanto per identificare un pixel è necessario un byte (combinazione di bit) e per ottenere un immagine di buona qualità sono necessarie matrici di almeno 1000 x 1000 pixel, generando file di grandezza uguale a un milione di byte o meglio un Megabyte.
Un immagine di un megabyte in genere può essere stampata non oltre il formato A4, in quanto un ingrandimento maggiore darebbe origine al fenomeno di aliasing (scalettatura), rendendo i pixel visibili ad occhio nudo. Questo effetto si genera quando le linee di rappresentazione non sono ortogonali e ancor più quando l'angolo è minimo rispetto all'ortogonalità generando la spezzettatura visiva della linea. Per ridurre il suddetto fenomeno è stato introdotto un algoritmo di correzzione chiamato antialiasing che permette di fondere le aree contrastate al fine di ingannare l'occhio

Per ridurre la dimensione del file bitmap sono stati studiati formati grafici di compressione come il "Tiff"e il "Jpg" o "Jepg" dove la grandezza del file è inversamente proporzionale alla perdita di qualità regolabile tramite parametri in fase di salvataggio.
Il sistema vettoriale è invece una rappresentazione generata per coordinate, quindi per rappresentare una linea sul monitor il computer trasferisce le informazioni delle coordinate xyz relative al punto di origine e di destinazione, alla scheda grafica, che a sua volta le converte in segnali video per essere rappresentata dal monitor.
Il formato vettoriale ha come vantaggio la possibilità di rappresentare diverse primitive grafiche senza aumentare di molto il peso del file, infatti per una linea determinata nello spazio tridimensionale sono necessari solo 6 numeri relativi alle suddette coordinate xyz di origine e destinazione.
In fase di stampa del formato vettoriale, il computer procederà a trasmettere queste informazioni non più alla scheda grafica ma bensì ad una periferica di stampa come un plotter.
La qualità della stampa finale è determinata dalla risoluzione del plotter o stampante, espressa a sua volta in D.p.i. cioè punti per pollice, cosi per una stampa a 300 Dpi saranno generati circa 300 punti di inchiostro su 2,5 cm di carta , quindi per stampare una linea in vettoriale, senza scalettature, anche su grandi formati sono necessarie solo 4 informazioni ( senza le 2 delle coordinate z destinate al 3D) e quindi avremmo un file con dimensione di 4 Byte più tutte le informazioni base necessarie al sistema.
Riassumendo, il formato bitmap è utilizzato per rappresentare immagini fotografiche generate da programmi come Adobe Photoshop e 3D Studio(Rendering), quello vettoriale invece per illustrazioni o modelli in 2d o 3d in wireframe (fil di ferro) generati rispettivamente da programmi come Corel draw, Adobe Illustrator e Autocad .
Il processo di rendering fonde queste due tecnologie applicando delle mappe bitmap ai modelli vettoriali e calcolando tramite gli algoritmi, la posizione, la prospettiva , l'illuminazione, le ombre e tutti i fattori presenti nei disturbi naturali come la riflessione, la trasparenza, la rifrazione etc.. generando in finale un immagine bitmap di qualità fotorealistica.

Bisogna specificare che nella scena destinata al rendering finale, il tempo di elaborazione dipende dai seguenti fattori :
1. Numero di poligoni e facce del modello 3D
2. Numero di Luci applicate Spot, Omni, Luce solare
3. Dimensione delle Mappe applicate
4. Tipo di algoritmo usato Flat, Phong, Raytrace, Radiosity,
5. Grandezza del file da generare in pixel

Oggi un buon computer di fascia media è basato su sistema Windows 2000 con processore Pentium III o AMD rispettivamente con velocità di clock di 1000 MHz ovvero un Gigahz, 256 Megabyte di ram e scheda grafica 3d a 64 bit, permettendo di sviluppare dei modelli architettonici digitali costituiti da una varietà di particolari, oltre il limite di percettibilità dell'occhio umano.
I tempi per elaborare un rendering si sono ridotti e in alcuni casi il processo avviene in tempo reale.
È possibile generare delle animazioni complesse in poche ore e navigare interattivamente su una base ottimizzata della nostra scena.
Qualsiasi modello 3d può essere elaborato digitalmente, e le fasi si suddividono in :
1. Creazione del modello 3d
2. Mappatura preliminare
3. Applicazione texture
4. Posizionamento fonti luminose
5. Scelta della vista
6. Rendering
7. Animazione

Nel prossimo articolo illustreremo come eseguire una mappatura preliminare, prendendo come riferimento il programma Autocad 2000 della Autodesk .
La fase di creazione del modello 3d viene tralasciata per la varietà degli obiettivi e la grande quantità dei contenuti, pertanto si consiglia una consultazione di un manuale per l'utilizzo del Cad professionale.

Notizia pubblicata in data : 17 Dicembre 2002


L’istituto CEFI è un centro autorizzato per il rilascio di certificazioni professionali dai più prestigiosi enti nazionali ed internazionali.