Per computer grafica (anche grafica digitale o grafica computerizzata; in inglese computer graphics) si intende quella disciplina informatica che ha per oggetto la creazione e quindi la manipolazione di immagini grafiche fisse o animate, per mezzo del computer.

Argomenti importanti nella computer grafica includono il design delle interfacce utente, la grafica delle sprite, la grafica vettoriale, la modellazione 3D, il ray tracing, la realtà virtuale.

Le tecniche e i software che permettono tale attività, si appoggiano sulle scienze della geometria, dell'ottica e della fisica.[1]

Storia

L'espressione computer graphics fu coniata nel 1960, dai ricercatori Verne Hudson e William Fetter. È spesso abbreviata come CG, tuttavia a volte tale acronimo viene confuso con CGI, cioè computer-generated imagery. L'espressione "computer grafica" in passato veniva intesa, in un senso ampio, per descrivere «circa ogni cosa sui computer che non sia testo o suono».[2] A quel tempo i concetti di computer e software grafico erano decisamente diversi da quelli che abbiamo al giorno d'oggi: anche se i contenuti 2D (planimetrie, schemi e disegni tecnici) potevano essere in qualche modo rappresentabili, non era ancora giunto il momento per i contenuti 3D.

Nei due decenni successivi, a riprova degli esponenziali tempi di sviluppo delle tecnologie informatiche, accaddero numerosi eventi, che portarono i computer a essere in grado di presentare qualcosa di più interessante di qualche linea immobile sullo schermo, suscitando così un interesse al di fuori della ristretta cerchia di ricercatori e ingegneri, all'interno della quale tutto questo era nato. Verso la fine degli anni Ottanta alcuni progettisti compresero le potenzialità di questo mezzo e si adoperarono per utilizzarlo con scopi diversi dalla progettazione o visualizzazione. È in questo periodo che avviene il primo contatto tra la computer grafica e il creativo mondo dell'intrattenimento.

Gli anni 1990 segnarono infine la svolta definitiva nell'impiego della computer grafica, con la produzione dei primi lungometraggi animati completamente in 3D, la comparsa dei primi videogiochi con grafiche tridimensionali e l'impiego massimo del computer per la generazione di effetti speciali nelle pellicole cinematografiche. Al giorno d'oggi comprendiamo facilmente il concetto di computer grafica, o contenuto 3D, in quanto ne siamo continuamente a contatto (film di animazione, visualizzazioni di progetti e prototipi di prodotti, pubblicità).

Descrizione

La computer grafica è la scienza e l'arte della comunicazione visiva per mezzo di uno schermo del computer e dei suoi dispositivi di interazione. È un campo che si serve di molte discipline, quali la fisica, matematica, percezione umana, interazione uomo-macchina, ingegneria, grafica, e l'arte.[3] La fisica è utilizzata per modellare la luce e per eseguire simulazioni animate; la matematica è utilizzata per descrivere e creare forme; la percezione umana lo è per determinare l'allocazione delle risorse (per evitare di sprecare tempo-macchina generando immagini di cose che non saranno notate); l'ingegneria per ottimizzare l'allocazione della lunghezza di banda, della memoria e dei tempi di elaborazione. Il graphic design e l'arte si combinano con l'interazione uomo-macchina per far sì che la comunicazione tra computer e utente sia il più efficace possibile.

La computer grafica, intesa come area dell'informatica, studia la creazione e manipolazione delle immagini usando la matematica e le tecniche computazionali da essa derivate, piuttosto che le pure problematiche estetiche, sebbene a volte le due cose possano coincidere o incrociarsi. Campi di studio che confluiscono nella computer grafica sono:

Riassumendo, possiamo dire che la computer grafica è...

  1. La rappresentazione e manipolazione di dati immagine attraverso un computer.
  2. L'insieme delle tecnologie impiegate per creare e manipolare immagini.
  3. Il sotto-campo dell'informatica che studia metodi per sintetizzare e manipolare digitalmente contenuti visivi.

Applicazioni

Al giorno d'oggi la computer grafica è parte integrante di tantissimi ambiti professionali e industriali. Per esempio la tipografia (impaginazione di giornali e riviste, anche detta desktop publishing), la progettazione grafica (CAD) nelle industrie metalmeccanica, elettronica, impiantistica ed edile, visualizzazione di dati tecnico/medico/scientifici (CAE), sistemi informativi territoriali (SIT o GIS) e di consumo come i videogiochi, il ritocco fotografico, il montaggio di filmati, l'industria cinematografica (film d'animazione digitale ed effetti speciali dei film). È possibile trovare la computer grafica anche in televisione (pubblicità), sui giornali, nelle previsioni meteorologiche, e in una varietà di indagini mediche e procedure chirurgiche. In una presentazione o report, per fare un esempio, un grafico ben costruito può rappresentare statistiche complesse in una forma che è più facile da capire e interpretare. Le interfacce grafiche utente (GUI) che troviamo negli smartphone, nei computer, nelle dashboard delle automobili, e in molti dispositivi elettronici casalinghi, sono state progettate grazie agli sviluppi della computer grafica.

Negli anni Novanta, sono stati oggetto di sviluppo altri campi come la visualizzazione dell'informazione, e una visualizzazione scientifica più incentrata nella «rappresentazione di fenomeni tridimensionali (di architettura, meteorologia, medicina, biologia, ecc...), dove l'enfasi è posta su rese realistiche di volumi, superfici, fonti di illuminazione, e così via, magari con una componente dinamica (tempo)».[4]

Concetti fondamentali

Tipi di immagine

Lo stesso argomento in dettaglio: Immagine digitale.

In generale, l'obiettivo della computer grafica è la creazione ed elaborazione di immagini e filmati digitali. Il termine "digitale" sta ad indicare un sistema o un dispositivo in cui le grandezze sono rappresentate attraverso valori numerici discreti, come per esempio nell'elaboratore elettronico o nelle macchine fotografiche dette appunto digitali.[5] Un'immagine può essere rappresentata digitalmente in due modi:

È possibile convertire un'immagine vettoriale in una bitmap attraverso la rasterizzazione. È anche possibile l'operazione inversa, attraverso l'image tracing.

Thumb
Le immagini raster sono basate sui pixel e perciò nel ridimensionamento vi è una perdita di definizione, mentre le immagini vettoriali possono essere ridimensionate senza degradarne la qualità.

Come viene visualizzata un'immagine su schermo?

La maggior parte delle immagini digitali vengono mostrate all'utente su un display raster, il quale le mostra come degli array rettangolari di pixel.[8] Da un punto di vista fisico, in ogni punto dello schermo, inizialmente nero, ci sono tre celle fosforescenti che emettono luce se colpite da un fascio di elettroni, ovvero se si aggiunge energia.[9] Ognuna delle celle corrisponde a uno dei tre colori primari della sintesi additiva: rosso, verde e blu.[9] Al valore massimo di intensità luminosa, prodotta da tutte e tre le celle contemporaneamente, corrisponde il bianco; alla minima, ossia a celle spente, il nero. Tutti gli altri colori si ottengono da combinazioni di intensità diverse di questi tre colori (vedi RGB).

Tuttavia, è bene considerare che perfino nelle televisioni (display raster esemplari), raramente si hanno lo stesso numero di pixel dell'immagine che si vuole visualizzare. Considerazioni come questa spezzano il legame diretto tra i pixel dell'immagine e quelli del display. È preferibile pensare un'immagine raster come una descrizione device-independent (indipendente dal dispositivo) dell'immagine che sarà visualizzata, e il dispositivo come un mezzo per approssimare quell'immagine ideale.[8]

Rappresentazione tridimensionale

Lo stesso argomento in dettaglio: Computer grafica 3D.

La modellazione digitale è l'insieme dei processi atti a creare rappresentazioni matematiche di oggetti tridimensionali.[10] È impiegata principalmente nell'animazione digitale, nel CAD/CAM, nello sviluppo di videogiochi, nelle simulazioni, per la stampa 3D. Vi sono fondamentalmente due tipologie di oggetti tridimensionali:

  • Solidi – Un modello solido è un vero e proprio corpo tridimensionale chiuso, con proprietà reali, quali massa, volume, centro di gravità e momenti di inerzia.[11]
  • Superfici – Una superficie è una sorta di velo sottile, privo di spessore e, quindi, di massa o volume.[11] Rientrano in questa categoria le mesh poligonali.[12]

Il rendering è il processo che, a partire dai modelli tridimensionali (vettoriali) presenti nella scena 3D[13], permette di generare immagini raster o filmati, dotati di una precisa risoluzione e raffiguranti le superfici degli oggetti, i materiali[14][15] e le texture in relazione all'illuminazione della scena stessa.[1][16] La parte di software dedicata a svolgere questo compito è chiamata motore di rendering (rendering engine)[1], il quale non solo calcola l'aspetto dei materiali associati agli oggetti, ma elabora anche il modo in cui le ombre devono essere create sia in base alle luci posizionate nella scena, sia alle impostazioni di esposizione e ambientali eventualmente definite.[11]

Animazione digitale

Lo stesso argomento in dettaglio: Animazione digitale.
Thumb
Immagine grafica in movimento

L'animazione è una tecnica impiegata come medium narrativo e trova spazio nel cinema, nella televisione, nei videogiochi e così via. Si ottiene riproducendo sequenze di immagini con variazioni coerenti del contenuto, a una velocità tale da rendere l'occhio umano non più in grado di distinguerle come singole immagini, creando l'illusione del movimento. All'interno di un software di animazione, oltre alle dimensioni spaziali (2D o 3D), è possibile rappresentare anche quella temporale, e ciò viene fatto tramite un elemento dell'interfaccia chiamato timeline, che è disposto orizzontalmente e suddiviso a intervalli regolari, chiamati fotogrammi, i quali costituiscono l'unità base dell'animazione.[1] Quelli del keyframing e dell'interpolazione sono i principi su cui si basa l'animazione al computer.[1]

Dati di rilievo

Cronologia

  • Anni quarantaIsaac Jacob Schoenberg sviluppa le descrizioni matematiche di curve complesse, chiamate B-splines ("B" per "basis").[6]
    • 1949 – Da quest'anno, il computer Whirlwind comincia ad essere utilizzato al MIT: è il primo computer che opera in tempo reale, usa schermi per l'output e che non è semplicemente un rimpiazzo elettronico di vecchi sistemi meccanici.[17] Charles W. Adams e John T. Gilmore Jr. sviluppano con questo computer il primo gioco animato con la grafica computerizzata, Bouncing Ball Program: un punto appare in alto su schermo, per poi cadere in basso e rimbalzare.[18]
  • Anni cinquantaPierre Bézier, mentre lavora alla Renault, produce la più importante opera sulle curve a interpolazione polinomiale e sulle sculptured surface. Un lavoro simile lo stava svolgendo, nello stesso tempo, Paul de Casteljau alla Citroën; tuttavia, alla scoperta fu dato il nome di Bézier.[18]
    • 1950Ben Laposky, un matematico e artista statunitense, crea le prime immagini generate con una macchina elettronica. Queste sono le figure di Lissajous.[6]
    • 1951Jay Forrester sviluppa il primo simulatore di volo programmabile.[19]
    • 1953 – I plotter entrano in uso come periferiche grafiche di output.[6]
    • 1955 – Il sistema di difesa aereo SAGE (Semi-Automatic Ground Environment) inizia ad operare. Usa monitor a scansione vettoriale come dispositivo principale di output, e penne ottiche come dispositivo principale di input.[6]
    • 1957 – Viene fondata la Digital Equipment Corporation (DEC). Produrrà minicomputer che saranno in seguito impiegati per i primi sviluppi della computer grafica.[6]
    • 1958 – Si diffondono ampiamente le penne ottiche.[6]
    • 1958 – Il gioco sperimentale Tennis for Two viene implementato da William Higinbotham al Brookhaven Laboratory.[20] Sebbene fosse interattivo, oggi è considerato un esperimento più che un gioco.
    • 1959Douglas T. Ross, mentre lavora al MIT sulla trasformazione di enunciati matematici in strumenti vettoriali per la generazione di immagini al computer, coglie l'occasione per proiettare su schermo l'immagine di un personaggio di un cartone animato Disney.[21]
    • 1959 – Un partenariato tra la General Motors e IBM produce il primo esempio di software per disegno informatico, il DAC-1 (Design Augmented by Computers); gli utenti possono immettere la descrizione tridimensionale di un'automobile, vederla in prospettiva, e ruotarla.[6]
  • Anni sessanta – La computer grafica, durante questo decennio, non è alla portata della maggior parte degli utenti, a causa dell'elevato prezzo dell'hardware grafico.[6] Non vi sono personal computer o workstation. Gli utenti devono pagare per usare i mainframe a tempo o comprare costosi minicomputer. I display dei monitor usano la scansione vettoriale e sono in bianco e nero. Ne risulta che pochi informatici professionisti possono sviluppare tecniche e algoritmi di grafica computerizzata e che il software non è ne interattivo ne portatile. Nei tardi anni Sessanta, Ivan Sutherland e David C. Evans sono invitati a sviluppare un programma di informatica all'Università dello Utah nella Salt Lake City. La computer grafica diviene rapidamente la specialità del loro dipartimento, che per anni manterrà lo status di primo centro mondiale in questo campo. Molti metodi e tecniche importanti saranno sviluppati allo UU Computer Graphics Lab, tra cui i modelli di illuminazione, algoritmi per superfici nascoste, e tecniche base di rendering per superfici poligonali. Nomi degli studenti dello UU come Phong Bui-Tuong, Henri Gouraud, James Blinn, e Ed Catmull, sono legati a molti algoritmi di base ancora in uso oggi.
    • 1960 – Viene coniata l'espressione computer graphics (in italiano "computer grafica") da Verne Hudson e William Fetter, un grafico della Boeing.[22]
    • 1961 – Uno studente del MIT, Steve Russell, crea il videogioco Spacewar, scritto per il DEC PDP-1.[23]
    • 1961 – Viene introdotto il primo linguaggio per l'animazione al computer: MACS.[18]
    • 1961Ivan Sutherland sviluppa Sketchpad, un programma per disegnare, come tesi di dottorato al MIT.[6] Sketchpad utilizzava una penna ottica come dispositivo principale di input e un oscilloscopio come dispositivo di output. La prima versione gestiva soltanto figure bidimensionali, e venne in seguito estesa per poter disegnare, trasformare e proiettare oggetti tridimensionali, e anche per eseguire calcoli ingegneristici come l'analisi delle sollecitazioni. Un'importante caratteristica di Sketchpad era la capacità di riconoscere i vincoli. L'utente poteva disegnare, per esempio, un quadrato grezzo, per poi istruire il software in modo da convertirlo in un quadrato esatto. Un'altra caratteristica era la capacità di avere a che fare con oggetti, non solo segmenti individuali di curve. L'utente poteva costruire un oggetto segmentato, per poi chiedere al software di scalarlo. A causa della sua opera pionieristica, Sutherland è spesso riconosciuto come il nonno della computer grafica interattiva e delle interfacce grafiche utente.
    • 1962 – Viene introdotto l'algoritmo della linea da Jack Elton Bresenham.[18]
    • 1963 – Viene introdotto il procedimento di eliminazione delle superfici nascoste o oscurate da Roberts.[18]
    • 1963E. E. Zajac, uno scienziato del Bell Telephone Laboratory (BTL), girò un film chiamato Simulazione di un sistema di controllo di assetto di gravità a due giro.[24][25] In questo film fatto al computer, Zajac mostra come l'assetto di un satellite possa venire alterato se il satellite orbita attorno alla Terra. Egli genera l'animazione su un computer mainframe IBM 7090.[24] Oltre a Zajac, anche Ken Knowlton, Frank Sinden e Michael Noll iniziano a lavorare nel campo della computer grafica. Sinden produce un film chiamato Forza, Massa e Movimento, che illustra i principi della dinamica di Newton in azione. Circa nello stesso periodo, altri scienziati impiegano la computer grafica per illustrare le proprie ricerche. Al Lawrence Radiation Laboratory, Nelson Max produce i film Flusso di un Fluido Viscoso e Propagazione di Onde d'urto in uno Stato Solido. La Boeing Aircraft produce un film chiamato Vibrazione di un aeroplano.
    • 1964 – Fa la sua comparsa il primo digitalizzatore, il tablet RAND.[6]
    • 1964 – Vengono introdotte le equazioni di conversione delle superfici per viste ortografiche da Weiss.[18]
    • 1964TRW, Lockheed-Georgia, General Electric e Sperry Rans sono tra le maggiori compagnie che iniziano a considerare la computer grafica dalla metà degli anni Sessanta.[6] IBM pubblica durante quest'anno l'IBM 2250, il primo computer commerciale in grado di gestire grafiche.[6]
    • 1965 – Viene introdotto lo schema omogeneo di coordinate per le trasformazioni e la prospettiva da Roberts.[18]
    • 1965 – Viene introdotto l'algoritmo di rasterizzazione di linea da Bresenham.[18]
    • 1966 – Ivan Sutherland sviluppa il primo visore (HMD), che mostra un paio di immagini wireframe stereoscopiche.[6] Questo dispositivo sarà riscoperto durante gli anni Ottanta e oggi è comunemente utilizzato in applicazioni della realtà virtuale.
    • 1968 – Viene introdotto l'object ray tracing da Arhur Appel.[26]
    • 1969 – Vengono introdotti gli algoritmi per le superfici nascoste da John Warnock.[27]
    • 1969 – La ACM (Association for Computing Machinery) lancia A Special Interest Group on Graphics (SIGGRAPH), la quale ancora oggi organizza conferenze, stabilisce standard grafici, e fa pubblicazioni riguardanti il campo della computer grafica. Dal 1974, ogni anno tiene una conferenza.
  • Anni ottanta – Durante questo decennio i personal computer (tra i più noti il Macintosh e l'Amiga) introducono l'interfaccia grafica utente (GUI) per interagire con l'utente e per mostrare graficamente i risultati con simboli, icone e immagini, piuttosto che con il testo. Gli anni Ottanta hanno anche visto l'ascesa dei monitor a scansione raster allo status di principali dispositivi grafici di output.[6] Questa tecnologia – che aveva beneficiato dell'esperienza avuta con i televisori – darà i suoi frutti negli odierni monitor a colori. Tra la fine degli anni Ottanta e l'inizio degli anni Novanta, si è assistito anche allo sviluppo di standard grafici come GKS e PHIGS. Gli anni Ottanta sono stati anche definiti come l'età dell'oro dei videogiochi arcade; vengono venduti milioni di sistemi da Atari, Nintendo e Sega, esponendo la computer grafica per la prima volta a un nuovo, giovane e impressionabile pubblico; i personal computer MS-DOS, Apple II, Mac, e Amiga, permettono di programmare, a qualsiasi utente sufficientemente capace, il proprio gioco.
  • Anni duemila – Nel corso di questo decennio, la CGI diventa pressoché onnipresente. Verso la fine degli anni Novanta, i videogiochi e il cinema in CGI avevano presentato alle masse la grafica computerizzata, e continuano a farlo a un ritmo accelerato nel primo decennio del nuovo millennio. Negli ultimi anni Novanta si era iniziato a impiegare la CGI massivamente per pubblicità televisive, ed è in questo decennio che diventa familiare a un pubblico esteso. Nei videogiochi, le console Sony Playstation 2 e 3, la linea Xbox della Microsoft, e prodotti della Nintendo come il Gamecube, guadagnano un grande seguito, come anche il PC Windows. Titoli pesantemente realizzati con la CGI come le serie di Grand Theft Auto, Assassin's Creed, Final Fantasy, BioShock, Kingdom Hearts, Mirror's Edge e dozzine di altri giochi, continuano ad approcciare il fotorealismo, accrescendo l'industria videoludica, fino a che i ricavi di questa non diventano paragonabili a quelli del cinema. Microsoft prende la decisione di esporre le DirectX più facilmente agli sviluppatori indipendenti con il programma XNA, senza successo. Quello delle DirectX rimane un successo commerciale, comunque. OpenGL continua a maturare, e insieme alle DirectX, migliora notevolmente; la seconda generazione di linguaggi shader, come HLSL e GLSL, inizia a guadagnare popolarità. Nel calcolo scientifico, viene inventata la tecnica GPGPU per trasferire grandi quantità di dati bidirezionalmente tra una GPU e una CPU, accelerando l'analisi di molti tipi di esperimenti di bioinformatica e biologia molecolare. La tecnica viene utilizzata anche per l'estrazione di Bitcoin e trova applicazioni nella visione artificiale.
  • Anni dieci – Nella prima metà degli anni duemiladieci, la CGI diventa definitivamente onnipresente nei video. Il texture mapping matura in un processo multistadio a molti livelli; generalmente non è raro implementare texture mapping, bump mapping o isosuperfici, normal mapping, lighting map tra cui specular highlight e tecniche di riflessione, e shadow volume, in un unico motore di rendering usando shader, che sono anch'essi maturati considerevolmente. Gli shader sono ormai una necessità per un lavoro avanzato nel campo, fornendo una complessità considerevole nella manipolazione di pixel, vertici e texture in base all'oggetto considerato e agli innumerevoli effetti possibili. I loro linguaggi HLSL e GLSL rappresentano dei campi attivi di ricerca e sviluppo. Il physically based rendering o PBR, che implementa ancora più mappe per simulare il flusso luminoso ottico della luce, rappresenta un'area di ricerca anch'essa attiva, insieme ad aree di ottica avanzata come il subsurface scattering e il photon mapping. Iniziano gli esperimenti per ottenere una potenza di elaborazione sufficiente per fornire grafiche in tempo reale ad alte risoluzioni, come l'Ultra HD. Nel cinema, la maggior parte dei film d'animazione includono ora la CGI; un gran numero di film di questo genere vengono prodotti annualmente ‒ ma pochi, se del caso ‒ tentano il fotorealismo, a causa dei continui timori della uncanny valley. Per la maggior parte si tratta di film d'animazione in 3D. Nei videogiochi, la Xbox One di Microsoft, la Sony Playstation 4 e il Nintendo Wii U dominano attualmente il gaming domestico e supportano grafiche 3D altamente avanzate; il PC Windows è comunque ancora una delle piattaforme da gaming più attive.

Pionieri

Organizzazioni e aziende di interesse

Gruppi universitari

La componente accademica riguardante la disciplina della computer grafica è dominata dalla SIGGRAPH, (abbreviazione di Special Interest Group on GRAPHics and Interactive Techniques). È la conferenza sulla grafica computerizzata organizzata annualmente negli Stati Uniti dall'ACM SIGGRAPH organization. La prima conferenza SIGGRAPH si tenne nel 1974, vi partecipano decine di migliaia di professionisti del campo. Fra le sedi delle varie edizioni della conferenza si annoverano Dallas, Seattle, Los Angeles, New Orleans e San Diego.

I gruppi accademici che studiano questa disciplina, nel mondo, sono:

Industria

Altro

Note

Bibliografia

Voci correlate

Altri progetti

Collegamenti esterni

Wikiwand in your browser!

Seamless Wikipedia browsing. On steroids.

Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.

Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.