• Non ci sono risultati.

Computer Graphics

N/A
N/A
Protected

Academic year: 2021

Condividi "Computer Graphics"

Copied!
3
0
0

Testo completo

(1)

Computer Graphics

Università dell’Insubria

Facoltà di Scienze MFN di Varese Corso di Laurea in Informatica

Lezione 15 Lezione 15 Lezione 15 Lezione 15 ::::

Paradigmi di rendering RAY-TRACING

Marco Tarini

Corso di Laurea in Informatica Anno Accademico 2010/11

RAY-TRACING

Ray-Tracing

• Idea: si seguono a ritroso i raggi di luce che giungono all’osservatore

– per ogni pixel sullo schermo:

• mando un raggio (il "raggio primario" di quel pixel)

• trovo la sua 1ma intersezione con un oggetto della scena

M a r c o T a r i n i ‧ C o m p u t e r G r a p h i c s ‧ 2 0 1 0 / 1 1 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a

punto di vista screen buffer

Ray-Tracing

• Implementazione:

– tutta basata su

intersezione raggio-primitive

(che va super-ottimizzata)

M a r c o T a r i n i ‧ C o m p u t e r G r a p h i c s ‧ 2 0 1 0 / 1 1 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a

Ray-Tracing

• Facile fare: ombre portate (nette)

raggio primario

raggio di shadowing (interseca, quindi il punto e' in ombra)

M a r c o T a r i n i ‧ C o m p u t e r G r a p h i c s ‧ 2 0 1 0 / 1 1 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a

Ray-Tracing

• Facile fare: riflessioni speculari (anche multiple)

raggio primario raggio di riflessione

M a r c o T a r i n i ‧ C o m p u t e r G r a p h i c s ‧ 2 0 1 0 / 1 1 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a

Ray-Tracing

• Facile fare: semitrasparenze con rifrazioni

raggio primario raggio di riflessione raggio di rifrazione

M a r c o T a r i n i ‧ C o m p u t e r G r a p h i c s ‧ 2 0 1 0 / 1 1 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a

(2)

Ray-Tracing: tipici esempi di risultati

M a r c o T a r i n i ‧ C o m p u t e r G r a p h i c s ‧ 2 0 1 0 / 1 1 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a ( Advanced Rendering Toolkit - Alexander Wilkie - 1999)

Ray-Tracing : tipici esempi di risultati

M a r c o T a r i n i ‧ C o m p u t e r G r a p h i c s ‧ 2 0 1 0 / 1 1 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a

Ray-Tracing : costo

• Task principale:

– computo dell'intersezione fra RAGGIO 3D e PRIMITIVE 3D

• E' computazionalmente caro – costanti alte

– ma in verità SUBLINEARE col numero di primitive

M a r c o T a r i n i ‧ C o m p u t e r G r a p h i c s ‧ 2 0 1 0 / 1 1 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a

– ma in verità SUBLINEARE col numero di primitive

• se vengono usate strutture dati adeguate

• In pratica, usato solo per rendering off-line

• Nota: spesso non usa nessun HW specializzato – implementazioni tipicamente su CPU

– trend recente: implementazioni su GP-GPU o CUDA

Ray-Tracing : Primitive di rendering Q: quali primitive di randering x raytracing?

A: qualunque cosa io sappia intersecare con un raggio!

Es:

– triangoli – superfici implicite

Goemetric Solid Modelling

M a r c o T a r i n i ‧ C o m p u t e r G r a p h i c s ‧ 2 0 1 0 / 1 1 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a

– superfici implicite

• sfere

• GSM

• …

Modelling

Ray-Tracing: HW apposito?

HW specializzato per fare RayTracing.

Per ora, solo prototipi nei laboratori.

Stessa idea base (parallelizzare).

M a r c o T a r i n i ‧ C o m p u t e r G r a p h i c s ‧ 2 0 1 0 / 1 1 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a

Scene: 5 alberi (milionate di triangoli) 28mila girasoli (11 tipi), 35K triangoli ciascuno.

OpenRT Project

inTrace Realtime Ray Tracing Technologies GmbH MPI Informatik, Saarbrueken - Ingo Wald 2004 (parallelizzare).

Implementazione del tutto differente dal nostro pipeline di rasterizzazione.

Sfonderà?

Computer Graphics

Università dell’Insubria

Facoltà di Scienze MFN di Varese Corso di Laurea in Informatica

Lezione 14:

Lezione 14:

Lezione 14:

Lezione 14:

Paradigmi di rendering 2/2

Radiosity

Marco Tarini

Corso di Laurea in Informatica

Anno Accademico 2010/11

(3)

Radiosity

• Algoritmo di illuminazione globale

• Gestisce bene riflessioni multiple diffusive

M a r c o T a r i n i ‧ C o m p u t e r G r a p h i c s ‧ 2 0 1 0 / 1 1 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a

Radiosity: Concetto

• Dividere la scena in “pezzetti di superficie”

– circa uguali

– (non necessariamente come i nostri triangoli...)

M a r c o T a r i n i ‧ C o m p u t e r G r a p h i c s ‧ 2 0 1 0 / 1 1 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a

Radiosity: Concetto

• Dividere la scena in pezzetti

• Per ogni coppia di pezzetti i e j – calcolare quanta luce ...

• che parte da i

• e si diffonde in tutte le direzioni (DIFFUSE!)

la matriciona corrsipondente e' detta Form Factor

M a r c o T a r i n i ‧ C o m p u t e r G r a p h i c s ‧ 2 0 1 0 / 1 1 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a

• e si diffonde in tutte le direzioni (DIFFUSE!) – ... raggiunge j

• Alcuni pezzetti emanano luce propria (le fonti di luce)

– gli altri diffondono solo quella che gli arriva da fuori

• Poi risolvere tutto (facile a dirsi)

Radiosity: Come

• Vecchia scuola:

– invertire una matrice enorme

• Come si fa davvero:

– metodi randomizzati stocastici (Monte Carlo)

M a r c o T a r i n i ‧ C o m p u t e r G r a p h i c s ‧ 2 0 1 0 / 1 1 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a

Radiosity: Costo

• E troppo caro da calcolare in tempo reale – e sarà così a lungo

• Ma... il risultato di questa computazione NON dipende dal punto di vista! (è "view independent")

– può essere salvato nella scena (in slang: “backed” lighting)

M a r c o T a r i n i ‧ C o m p u t e r G r a p h i c s ‧ 2 0 1 0 / 1 1 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a

– può essere salvato nella scena

• come colore per vertice

• o in una tessitura, etc

• (stiamo assumendo materiali lambertiani)

– e renderizzato in real-time tramite rasterizzazione:

• almeno finché cambia solo il punto di vista – (ne' l'illuninazione, ne' la scena)

• togliendo il lighting (almento le componenti AMBIENT e DIFFUSE)

Radiosity: esempi di risultati

M a r c o T a r i n i ‧ C o m p u t e r G r a p h i c s ‧ 2 0 1 0 / 1 1 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a

Riferimenti

Documenti correlati

inTrace Realtime Ray Tracing Technologies GmbH MPI Informatik, Saarbrueken - Ingo Wald 2004 HW specializzato.. per

inTrace Realtime Ray Tracing Technologies GmbH MPI Informatik, Saarbrueken - Ingo Wald 2004 HW specializzato.. per

[r]

[r]

Flat shading Goraund shading Phong Shading (*) talvolta (ma impropriamente) detto: per-pixel lighting. quando si usano normali

[r]

di vista riflessa dalla norm.). Environment

[r]