domenica 15 marzo 2009

Anti-Aliasing (AA)

Vi riporto una breve spiegazione sull'AntiAliasing da me scritto per il forum del sito http://www.multimedialecorso.net del Professor Luca De Mata .

Poiché -per ovvi motivi di sfruttamento dello spazio disponibile su un monitor- i pixel sono quadrati (basti pensare alla superficie che resterebbe inutilizzata nel disporre su una griglia pixel circolari o a forma di poligono con più di 4 lati), risulta altrettanto ovvio che la rappresentazioni di linee oblique e curve apparirà “sgranata” poiché gli spigoli dei pixel (seppure di dimensioni minuscole) vengono comunque percepiti dall’occhio.

Per ovviare a questo problema, oltre ai continui progressi nella diminuzione del Dot Pitch (caratteristica importante, purtroppo spesso non considerata da chi acquista, tanto da essere –assieme al refresh rate, luminosità e contrasto- la causa dei prezzi apparentemente bassi di alcuni monitor …) il computer, grazie anche alle capacità della scheda grafica, crea un’ulteriore serie variabile di pixel attorno ad ogni singolo pixel e da loro un colore che è una variazione del colore del pixel centrale calcolata in base al colore dei pixel contigui.

In parole povere: crea una serie di pixel aggiuntivi con colori intermedi rendendo così il passaggio da un colore ad un altro più graduale ingannando così l'occhio che avrà una percezione minore della presenza degli spigoli del pixel.

I metodi utilizzati per fare ciò, che viene definito come anti-aliasing Spaziale, sono svariati, ma il più comune è il supersampling che crea attorno ad un pixel centrale una maschera di sub-pixel, in genere di 2x2 o più in base alle capacità del computer, di colore calcolato secondo il principio descritto sopra.
Il multisampling viene definito come una versione del supersampling perché, in effetti, altro non dovrebbe essere che un’applicazione parziale del supersampling, ovvero la maschera di sub pixel non viene calcolata per ogni singolo pixel.

Altri metodi di anti-aliasing sono proprietari delle schede grafiche.
Si può quindi facilmente intuire come l’ AA metta sotto sforzo le nostre macchine, non a caso molti programmi di grafica permettono di disattivarlo durante la fase di lavorazione restituendoci così anteprime di bassa qualità, ma alleggerendo notevolmente il carico dei processori e, alla stessa maniera, i videogiochi in 3D permettono di regolarne la quantità per garantire fps decenti anche su macchine più attempate.
L’uso dell’anti-aliasing è stato introdotto nel mercato consumer durante i primi anni degli anni ’90 e nello specifico mercato del gaming con l’avvento delle console a 32 bit.

Per quanto riguarda la grafica bidimensionale è importante valutare quando e quanto usare l’AA. Con testo molto piccolo, infatti, l’antialias rischia di diminuire la leggibilità poiché un’applicazione massiccia può far apparire le forme sfocate. Per questo motivo alcuni programmi di grafica e d'impaginazione permettono la scelta della quantità di AA come caratteristica del testo o la quantità di AA da applicare ad un nostro lavoro in fase di esportazione/rendering.

Per quanto riguarda l'animazione Flash, inoltre, la qualità dell' antialiasing ha abbastanza incidenza sulla velocità di riproduzione dei filmati. Un trucco per evitare rallentamenti è infatti quello di, tramite scripting, abbassare temporaneamente la qualità dell'AA durante i movimenti di clip di grosse dimensioni o nel caso della presenza di numerosi clip contemporaneamente su schermo.