Rendering - Wikipedia
Page 1 of 7
Rendering
Da Wikipedia, l'enciclopedia libera.
Il rendering è un termine della lingua inglese che in senso
esteso indica la resa (o restituzione) grafica, ovvero
un'operazione compiuta da un disegnatore per produrre una
rappresentazione di qualità di un oggetto o di una architettura
(progettata o rilevata). In tempi relativamente recenti ha
assunto un valore essenzialmente riferito all'ambito della
computer grafica, dove identifica il processo di "resa" ovvero
di generazione di un'immagine a partire da una descrizione
matematica di una scena tridimensionale interpretata da
algoritmi che definiscono il colore di ogni punto
dell'immagine digitale.
Indice
◾
◾
◾
◾
◾
Descrizione
Uso
Fenomeni
Tecniche
Base accademica
◾ 5.1 Le equazioni alla base del rendering
◾ 5.2 La BRDF
◾ 5.3 Ottica geometrica
◾ 5.4 Percezione visiva
◾ 6 Cronologica delle idee pubblicate
◾ 7 Libri e compendi
◾ 8 Altri progetti
Una resa grafica virtuale della sala II
dei Musei del Castello Sforzesco di
Milano, dove viene illustrato
l'allestimento eseguito dai BBPR per
il riordino degli stessi.
1
2
3
4
5
Un'immagine renderizzata con POVRay
Descrizione
È uno dei temi più importanti della grafica computerizzata tridimensionale e in pratica è sempre in
relazione con tutti gli altri. Nell'ambito del processo di generazione grafica è l'ultimo importante
stadio e fornisce l'aspetto finale al modello e all'animazione. Con il crescente perfezionamento della
grafica computerizzata dal 1970 in avanti è diventato oggetto di studi e ricerche sempre più specifici.
È usato per: montaggio video, giochi per computer, simulatori, effetti visuali per film e serie TV,
visualizzazione di progetti. Ciascuno con una differente combinazione di caratteristiche e tecniche.
Sono disponibili in commercio un gran numero di motori di render, alcuni dei quali integrati nei più
diffusi pacchetti di modellazione e animazione tridimensionale, alcuni altri indipendenti, altri ancora
distribuiti come progetti open source.
https://it.wikipedia.org/wiki/Rendering
02/10/2016
Rendering - Wikipedia
Page 2 of 7
Un renderizzatore è un programma basato su una combinazione selezionata di metodi relativi a:
ottica, percezione visiva, matematica e ingegneria del software.
Nel caso della grafica tridimensionale, il rendering è un processo lento e richiede un gran numero di
elaborazioni da parte della CPU, oppure è assistito in tempo reale dagli acceleratori 3D delle schede
grafiche (per i giochi tridimensionali).
Uso
Quando l'elaborazione preliminare della scena (una rappresentazione wireframe solitamente) è
completa, inizia la fase di rendering che aggiunge texture bitmap o texture procedurali, luci, bump
mapping, e posizioni relative agli altri oggetti. Il risultato è un'immagine completa che è possibile
vedere.
Nel caso di animazioni per pellicole cinematografiche, molte immagini (fotogrammi) devono essere
disegnate e assemblate in un programma capace di creare un'animazione di questo tipo. La maggior
parte dei programmi di elaborazione 3D sono in grado di elaborare queste immagini.
Fenomeni
Le immagini possono essere analizzate in termini di una serie di fenomeni visibili. Le ricerche e i
progressi nel campo del rendering sono state in gran parte motivate dal tentativo di simularli in modo
accurato ed efficiente.
◾ shading — ombreggiatura; variazione del colore e luminosità di una superficie a seconda della
luce incidente
◾ texture mapping — un metodo per definire i dettagli del colore di una superficie mettendola
in corrispondenza con un'immagine (texture)
◾ bump mapping — un metodo per simulare irregolarità nella forma di una superficie
mettendola in corrispondenza con un'immagine (bump map) che definisce una perturbazione
fittizia della superficie, usata solo per ricavarne una distorsione della direzione perpendicolare
(normale) impiegata nei calcoli per la propagazione della luce.
◾ normal mapping — un metodo simile al bump mapping in cui l'immagine definisce
direttamente come perturbare la normale della superficie in quel punto.
◾ displacement-mapping — estrusione di una superficie secondo le normali tramite un'immagine
in scala di grigi, producendo una reale perturbazione della forma della superficie, (per esempio
per creare una montagna a partire da una superficie piana).
◾ distance fog — attenuazione e dispersione della luce nel passaggio attraverso l'aria o altri
mezzi; solo il vuoto è perfettamente trasparente.
◾ shadows — gestione delle ombre proiettate
◾ soft shadows — ombre parziali prodotte da sorgenti di luce estese
◾ reflection — riflessioni speculari o quasi
◾ transparency — trasmissione della luce attraverso un oggetto
◾ rifrazione — deviazione della luce nel passaggio da un mezzo all'altro
◾ illuminazione indiretta e Global illumination — tenere conto della luce riflessa più volte (il
minimo è una sola riflessione, sorgente di luce -> oggetto -> camera)
◾ caustiche — accumulo di luce riflessa o rifratta proiettata in forme caratteristiche su altri
oggetti (ad esempio la forma a cardioide della luce riflessa dall'interno di un cilindro o le
forme irregolari in movimento sul fondo di una piscina)
https://it.wikipedia.org/wiki/Rendering
02/10/2016
Rendering - Wikipedia
Page 3 of 7
◾ profondità di campo o DoF (Depth of Field) — simulazione della progressiva sfocatura degli
oggetti posti a distanza crescente dalla superficie di messa a fuoco (profondità di campo).
◾ motion blur — simulazione della sfocatura degli oggetti in movimento rapido come in una
ripresa fotografica.
◾ subsurface scattering o SSS — simulazione del comportamento della luce che penetra un
oggetto di materiale traslucido come la cera o la pelle umana (dispersione subsuperficiale).
◾ ambient occlusion — simulazione del comportamento della luce in prossimità di volumi
occlusi dove i raggi luminosi faticano ad entrare e uscire
◾ anisotropia — simulazione di un materiale che riflette la luce in modo diverso per ogni
direzione tangente al punto.
Tecniche
Le principali tipologie di algoritmi per risolvere il problema sono:
◾ radiosity: collegata alla matematica agli elementi finiti;
◾ ray tracing: collegata dalla matematica probabilistica.
Questi approcci possono essere particolarmente intensi dal punto di vista computazionale, perché
entrambi creano una struttura abbastanza completa per la gestione delle equazione di rendering.
Per le applicazione real-time, non è pensabile di eseguire una elaborazione completa. In genere si
semplifica il problema con una delle seguenti approssimazioni:
◾ Nessuna illuminazione, solo texture mapping, poiché il colore intrinseco di un oggetto ha
l'influenza maggiore sul suo aspetto.
◾ Illuminazione diretta: si tiene conto solo della luce che va dalla fonte di illuminazione alla
superficie, non di quella riflessa da altre superfici presenti nella scena. Questa luce potrà essere
tenuta in considerazione con altri casi speciali attraverso il precalcolo.
Alcuni dei principali algoritmi, sono:
◾
◾
◾
◾
◾
◾
◾
Algoritmo del pittore
Algoritmi di tipo scanline
Algoritmi che utilizzano lo Z-buffer
Illuminazione globale
Radiosity
Ray tracing
Rendering volumetrico
Chi deve eseguire il rendering di grandi quantità di immagini (per esempio quelle di una sequenza
cinematografica) usa una rete di computer connessi tra loro, detta render farm.
L'attuale stato dell'arte per la costruzione di scene in 3D per la creazione di film è il linguaggio di
descrizione delle scene RenderMan creato dalla Pixar. (da confrontare con formati più semplici per
la descrizione di un ambiente 3D come VRML o API come DirectX o OpenGL che sfruttano
l'accelerazione hardware delle moderne schede grafiche).
altri popolari e potenti motori di render:
◾ Mental Ray
https://it.wikipedia.org/wiki/Rendering
02/10/2016
Rendering - Wikipedia
◾
◾
◾
◾
◾
Page 4 of 7
Vray
Brazil
Final Render
POV-Ray
Maxwell Render Render Unbiased ita Unbiased eng Volumetric
Base accademica
Molti ambienti di sviluppo hanno come scopo la creazione di immagini fotorealistiche, cioè il più
possibile vicine alla riproduzione fotografica
L'implementazione di renderizzatori realistici ha sempre per base la simulazione della fisica che sta
alla base del comportamento della luce.
Il termine basato sulla fisica indica l'utilizzo di modelli e approssimazioni che sono molto generali e
ampiamente diffuse fuori dall'ambiente del rendering. Un insieme particolare di tecniche sono
gradualmente diventate pratica comune tra i grafici.
Il concetto di base è abbastanza facile da capire, ma non trattabile attraverso mera computazione; un
singolo ed elegante algoritmo non esiste (al momento). Al fine di incontrare la domanda di
robustezza, accuratezza e praticità, ogni implementazione utilizza in maniera diversa un insieme di
tecniche.
Le equazioni alla base del rendering
Significato: in una particolare posizione e direzione, la luce uscente (Lo) è la somma della luce
emessa (Le) e della luce riflessa. La luce riflessa è ottenuta moltiplicando: Li (la luce che arriva da
tutte le direzioni), per il coefficiente di riflessione (fr), e per l'angolo di arrivo.
Questa è la chiave del concetto accademico-teorico del rendering. È l'espressione più astratta e
formale del problema del rendering. Tutti gli algoritmi più completi possono essere visti come una
soluzione particolare della formulazione presente in questa equazione.
La BRDF
La BRDF (bidirectional reflectance distribution function) è un modello che esprime l'interazione
della luce con una superficie tramite questa semplice espressione::
L'interazione con la luce è molto spesso approssimata con modelli ancora più semplici: riflessione
diffusa e speculare, anche se tutte e due possono seguire questa formulazione.
Ottica geometrica
https://it.wikipedia.org/wiki/Rendering
02/10/2016
Rendering - Wikipedia
Page 5 of 7
Lo studio della propagazione di onde elettromagnetiche per mezzo del concetto di raggio che si
propaga rettilinearmente, ignorando ogni possibile effetto di diffrazione e quindi la natura
ondulatoria della luce stessa. Ciò permette di utilizzare un modello relativamente semplice per lo
studio di lenti, specchi piani, concavi e convessi.
Percezione visiva
La matematica usata nel rendering include: algebra lineare, calcolo numerico, analisi numerica,
analisi digitale di segnali, metodo Montecarlo
Cronologica delle idee pubblicate
◾ 1970 Scan-line algorithm (Bouknight, W. J. (1970). A procedure for generation of threedimensional half-tone computer graphics presentations. Communications of the ACM)
◾ 1971 Gouraud shading (Gouraud, H. (1971). Computer display of curved surfaces. IEEE
Transactions on Computers 20 (6), 623–629.)
◾ 1974 Texture mapping (Catmull, E. (1974). A subdivision algorithm for computer display of
curved surfaces. PhD thesis, University of Utah.)
◾ 1974 Z-buffer (Catmull, E. (1974). A subdivision algorithm for computer display of curved
surfaces. PhD thesis)
◾ 1975 Phong shading (Phong, B-T. (1975). Illumination for computer generated pictures.
Communications of the ACM 18 (6), 311–316.)
◾ 1976 Environment mapping (Blinn, J.F. Newell, M.E. (1976). Texture and reflection in
computer generated images. Communications of the ACM 19, 542–546.)
◾ 1977 Shadow volumes (Crow, F.C. (1977). Shadow algorithms for computer graphics.
Computer Graphics (Proceedings of SIGGRAPH 1977) 11 (2), 242–248.)
◾ 1978 Shadow buffer (Williams, L. (1978). Casting curved shadows on curved surfaces.
Computer Graphics (Proceedings of SIGGRAPH 1978) 12 (3), 270–274.)
◾ 1978 Bump mapping (Blinn, J.F. (1978). Simulation of wrinkled surfaces. Computer
Graphics (Proceedings of SIGGRAPH 1978) 12 (3), 286–292.)
◾ 1980 BSP trees (Fuchs, H. Kedem, Z.M. Naylor, B.F. (1980). On visible surface generation
by a priori tree structures. Computer Graphics (Proceedings of SIGGRAPH 1980) 14 (3), 124
–133.)
◾ 1980 Ray tracing (Whitted, T. (1980). An improved illumination model for shaded display.
Communications of the ACM 23 (6), 343–349.)
◾ 1981 Cook shader (Cook, R.L. Torrance, K.E. (1981). A reflectance model for computer
graphics. Computer Graphics (Proceedings of SIGGRAPH 1981) 15 (3), 307–316.)
◾ 1983 Mipmaps (Williams, L. (1983). Pyramidal parametrics. Computer Graphics
(Proceedings of SIGGRAPH 1983) 17 (3), 1–11.)
◾ 1984 Octree ray tracing (Glassner, A.S. (1984). Space subdivision for fast ray tracing. IEEE
Computer Graphics & Applications 4 (10), 15–22.)
◾ 1984 Alpha compositing (Porter, T. Duff, T. (1984). Compositing digital images. Computer
Graphics (Proceedings of SIGGRAPH 1984) 18 (3), 253–259.)
◾ 1984 Distributed ray tracing (Cook, R.L. Porter, T. Carpenter, L. (1984). Distributed ray
tracing. Computer Graphics (Proceedings of SIGGRAPH (1984) 18 (3), 137–145.)
◾ 1984 Radiosity (Goral, C. Torrance, K.E. Greenberg, D.P. Battaile, B. (1984). Modelling the
interaction of light between diffuse surfaces. Computer Graphics (Proceedings of SIGGRAPH
1984) 18 (3), 213–222.)
https://it.wikipedia.org/wiki/Rendering
02/10/2016
Rendering - Wikipedia
Page 6 of 7
◾ 1985 Hemi-cube radiosity (Cohen, M.F. Greenberg, D.P. (1985). The hemi-cube: a radiosity
solution for complex environments. Computer Graphics (Proceedings of SIGGRAPH 1985) 19
(3), 31–40.)
◾ 1986 Light source tracing (Arvo, J. (1986). Backward ray tracing. SIGGRAPH 1986
Developments in Ray Tracing course notes)
◾ 1986 Rendering equation (Kajiya, J.T. (1986). The rendering equation. Computer Graphics
(Proceedings of SIGGRAPH 1986) 20 (4), 143–150.)
◾ 1987 Reyes algorithm (Cook, R.L. Carpenter, L. Catmull, E. (1987). The reyes image
rendering architecture. Computer Graphics (Proceedings of SIGGRAPH 1987) 21 (4), 95
–102.)
◾ 1991 Hierarchical radiosity (Hanrahan, P. Salzman, D. Aupperle, L. (1991). A rapid
hierarchical radiosity algorithm. Computer Graphics (Proceedings of SIGGRAPH 1991) 25
(4), 197–206.)
◾ 1993 Tone mapping (Tumblin, J. Rushmeier, H.E. (1993). Tone reproduction for realistic
computer generated images. IEEE Computer Graphics & Applications 13 (6), 42–48.)
◾ 1993 Subsurface scattering (Hanrahan, P. Krueger, W. (1993). Reflection from layered
surfaces due to subsurface scattering. Computer Graphics (Proceedings of SIGGRAPH 1993)
27 , 165–174.)
◾ 1995 Photon mapping (Jensen, H.J. Christensen, N.J. (1995). Photon maps in bidirectional
monte carlo ray tracing of complex objects. Computers & Graphics 19 (2), 215–224.)
Libri e compendi
◾ Foley; Van Dam; Feiner; Hughes (1990). Computer Graphics: Principles And Practice.
Addison Wesley. ISBN 0-201-12110-7.
◾ http://www.wegroups.eu
◾ Glassner (1995). Principles Of Digital Image Synthesis. Morgan Kaufmann. ISBN 1-55860276-3.
◾ Dutre; Bala; Bekaert (2002). Advanced Global Illumination. AK Peters. ISBN 1-56881-177-2.
◾ Jensen (2001). Realistic Image Synthesis Using Photon Mapping. AK Peters. ISBN 1-56881147-0.
◾ Shirley; Morley (2003). Realistic Ray Tracing (2nd ed.). AK Peters. ISBN 1-56881-198-5.
◾ Glassner (1989). An Introduction To Ray Tracing. Academic Press. ISBN 0-12-286160-4.
◾ Cohen; Wallace (1993). Radiosity and Realistic Image Synthesis. AP Professional. ISBN 0-12178270-0.
◾ Akenine-Moller; Haines (2002). Real-time Rendering (2nd ed.). AK Peters. ISBN 1-56881182-9.
◾ Gooch; Gooch (2001). Non-Photorealistic Rendering. AKPeters. ISBN 1-56881-133-0.
◾ Strothotte; Schlechtweg (2002). Non-Photorealistic Computer Graphics. Morgan Kaufmann.
ISBN 1-55860-787-0.
◾ Blinn (1996). Jim Blinns Corner - A Trip Down The Graphics Pipeline. Morgan Kaufmann.
ISBN 1-55860-387-5.
◾ Description of the "Radiance" system, radsite.lbl.gov.
Altri progetti
◾
Wikimedia Commons (https://commons.wikimedia.org/wiki/?uselang=it) contiene
immagini o altri file su Rendering
(https://commons.wikimedia.org/wiki/3D_computer_graphics?uselang=it)
https://it.wikipedia.org/wiki/Rendering
02/10/2016
Rendering - Wikipedia
Controllo di
autorità
Page 7 of 7
GND: (DE) 4197032-9 (http://d-nb.info/gnd/4197032-9)
Estratto da "https://it.wikipedia.org/w/index.php?title=Rendering&oldid=81873166"
Categorie: Grafica 3D Strumenti informatici per la progettazione | [altre]
◾ Questa pagina è stata modificata per l'ultima volta il 6 lug 2016 alle 14:50.
◾ Il testo è disponibile secondo la licenza Creative Commons Attribuzione-Condividi allo stesso
modo; possono applicarsi condizioni ulteriori. Vedi le Condizioni d'uso per i dettagli.
Wikipedia® è un marchio registrato della Wikimedia Foundation, Inc.
https://it.wikipedia.org/wiki/Rendering
02/10/2016