ambient occlusion disciplina: fundamentos de computação gráfica professor : marcelo gattass allan...
TRANSCRIPT
![Page 1: Ambient Occlusion Disciplina: Fundamentos de Computação Gráfica Professor : Marcelo Gattass Allan Carlos Avelino Rocha Departamento de Informática](https://reader036.vdocuments.pub/reader036/viewer/2022081502/552fc15e497959413d8e5b8f/html5/thumbnails/1.jpg)
Ambient Occlusion
Disciplina: Fundamentos de Computação Gráfica
Professor : Marcelo Gattass
Allan Carlos Avelino Rocha
Departamento de Informática
![Page 2: Ambient Occlusion Disciplina: Fundamentos de Computação Gráfica Professor : Marcelo Gattass Allan Carlos Avelino Rocha Departamento de Informática](https://reader036.vdocuments.pub/reader036/viewer/2022081502/552fc15e497959413d8e5b8f/html5/thumbnails/2.jpg)
Departamento de Informática
Introdução
Iluminação Global Tradicional
• Não provoca adequado efeito Realístico
Motivação:
• Irradiação constante e adirecional
![Page 3: Ambient Occlusion Disciplina: Fundamentos de Computação Gráfica Professor : Marcelo Gattass Allan Carlos Avelino Rocha Departamento de Informática](https://reader036.vdocuments.pub/reader036/viewer/2022081502/552fc15e497959413d8e5b8f/html5/thumbnails/3.jpg)
Departamento de Informática
Introdução
Ambient Environment
Motivação:
•Ambient Occlusion
• Efeito mais realístico
Método de shading usado para ajudar a adicionar realismo a modelosde reflexão local, tendo em conta a atenuação da luz devido a oclusão.
![Page 4: Ambient Occlusion Disciplina: Fundamentos de Computação Gráfica Professor : Marcelo Gattass Allan Carlos Avelino Rocha Departamento de Informática](https://reader036.vdocuments.pub/reader036/viewer/2022081502/552fc15e497959413d8e5b8f/html5/thumbnails/4.jpg)
Departamento de Informática
Introdução
Ambient Occlusion
Primeiro apresentado por Zhukov, Iones e Kronin em “An ambient light illumination model” , em 1998.
Landis and Christensen, em “RenderMan in Production”, em 2002.
![Page 5: Ambient Occlusion Disciplina: Fundamentos de Computação Gráfica Professor : Marcelo Gattass Allan Carlos Avelino Rocha Departamento de Informática](https://reader036.vdocuments.pub/reader036/viewer/2022081502/552fc15e497959413d8e5b8f/html5/thumbnails/5.jpg)
Departamento de Informática
Introdução
Cinema:
![Page 6: Ambient Occlusion Disciplina: Fundamentos de Computação Gráfica Professor : Marcelo Gattass Allan Carlos Avelino Rocha Departamento de Informática](https://reader036.vdocuments.pub/reader036/viewer/2022081502/552fc15e497959413d8e5b8f/html5/thumbnails/6.jpg)
Departamento de Informática
Introdução
![Page 7: Ambient Occlusion Disciplina: Fundamentos de Computação Gráfica Professor : Marcelo Gattass Allan Carlos Avelino Rocha Departamento de Informática](https://reader036.vdocuments.pub/reader036/viewer/2022081502/552fc15e497959413d8e5b8f/html5/thumbnails/7.jpg)
Departamento de Informática
IntroduçãoVisualização Científica
![Page 8: Ambient Occlusion Disciplina: Fundamentos de Computação Gráfica Professor : Marcelo Gattass Allan Carlos Avelino Rocha Departamento de Informática](https://reader036.vdocuments.pub/reader036/viewer/2022081502/552fc15e497959413d8e5b8f/html5/thumbnails/8.jpg)
Departamento de Informática
Ambient Occlusion
Definição: Ambient occlusion refere-se a atenuação da luz ambiente devido a oclusão de uma geometria próxima:
onde,
Visibilidade de um ponto p ao longodo hemisfério .
![Page 9: Ambient Occlusion Disciplina: Fundamentos de Computação Gráfica Professor : Marcelo Gattass Allan Carlos Avelino Rocha Departamento de Informática](https://reader036.vdocuments.pub/reader036/viewer/2022081502/552fc15e497959413d8e5b8f/html5/thumbnails/9.jpg)
Departamento de Informática
Ambient Occlusion
Gems 1 – “Ambient Occlusion” desenvolvido por Matt Pharr eSimon Green, 2004.
,
Informação
necessária • Acessibilidade do ponto• Média da direção unoccluded (bent normal)
![Page 10: Ambient Occlusion Disciplina: Fundamentos de Computação Gráfica Professor : Marcelo Gattass Allan Carlos Avelino Rocha Departamento de Informática](https://reader036.vdocuments.pub/reader036/viewer/2022081502/552fc15e497959413d8e5b8f/html5/thumbnails/10.jpg)
Departamento de Informática
Ambient Occlusion
Abordagem inside-out X outside-in
Inside-out
![Page 11: Ambient Occlusion Disciplina: Fundamentos de Computação Gráfica Professor : Marcelo Gattass Allan Carlos Avelino Rocha Departamento de Informática](https://reader036.vdocuments.pub/reader036/viewer/2022081502/552fc15e497959413d8e5b8f/html5/thumbnails/11.jpg)
Departamento de Informática
Ambient Occlusion
,
Outside-in
Menor custo computacional Obtém bons resultados quando comparado ao ray tracing Pode ser mapeada para implementação em Gpu
![Page 12: Ambient Occlusion Disciplina: Fundamentos de Computação Gráfica Professor : Marcelo Gattass Allan Carlos Avelino Rocha Departamento de Informática](https://reader036.vdocuments.pub/reader036/viewer/2022081502/552fc15e497959413d8e5b8f/html5/thumbnails/12.jpg)
Departamento de Informática
Ambient Occlusion
Shadow Mapping
glEnable(GL_DEPTH_TEST);
glEnable(GL_CULL_FACE);glCullFace(GL_BACK);
gluLookAt(eyex,eyey,eyez, atx,aty,atz, upx,upy,upz);
bunny->Draw();
glReadPixels(0,0,width,height,GL_DEPTH_COMPONENT,GL_FLOAT,shadowMap);
![Page 13: Ambient Occlusion Disciplina: Fundamentos de Computação Gráfica Professor : Marcelo Gattass Allan Carlos Avelino Rocha Departamento de Informática](https://reader036.vdocuments.pub/reader036/viewer/2022081502/552fc15e497959413d8e5b8f/html5/thumbnails/13.jpg)
Departamento de Informática
Ambient Occlusion
,
Shadow Map - bunny
![Page 14: Ambient Occlusion Disciplina: Fundamentos de Computação Gráfica Professor : Marcelo Gattass Allan Carlos Avelino Rocha Departamento de Informática](https://reader036.vdocuments.pub/reader036/viewer/2022081502/552fc15e497959413d8e5b8f/html5/thumbnails/14.jpg)
Departamento de Informática
Ambient Occlusion
Algoritmo
![Page 15: Ambient Occlusion Disciplina: Fundamentos de Computação Gráfica Professor : Marcelo Gattass Allan Carlos Avelino Rocha Departamento de Informática](https://reader036.vdocuments.pub/reader036/viewer/2022081502/552fc15e497959413d8e5b8f/html5/thumbnails/15.jpg)
Departamento de Informática
Ambient Occlusion
Textura Projetiva
Projeção de imagens sobre superfícies
Exemplo: projetor de slides
![Page 16: Ambient Occlusion Disciplina: Fundamentos de Computação Gráfica Professor : Marcelo Gattass Allan Carlos Avelino Rocha Departamento de Informática](https://reader036.vdocuments.pub/reader036/viewer/2022081502/552fc15e497959413d8e5b8f/html5/thumbnails/16.jpg)
Departamento de Informática
Ambient Occlusion
Projeção de um ponto
Montando a matriz de projeção
glGetFloatv(GL_MODELVIEW_MATRIX, lightViewMatrix);
glGetFloatv(GL_PROJECTION_MATRIX, lightProjectionMatrix);
Recuperar as matrizes ModelView e Projection
Alinhamento do plano de projeção do espaço de Clipping para o espaço de Textura
Espaco de clipping varia de [-1,1]Espaco de textura varia de [0, 1]
![Page 17: Ambient Occlusion Disciplina: Fundamentos de Computação Gráfica Professor : Marcelo Gattass Allan Carlos Avelino Rocha Departamento de Informática](https://reader036.vdocuments.pub/reader036/viewer/2022081502/552fc15e497959413d8e5b8f/html5/thumbnails/17.jpg)
Departamento de Informática
Ambient Occlusion
Projeção de um ponto
Montando a matriz de projeção
Correção
Então tem-se que a matriz de projeção é dada por
![Page 18: Ambient Occlusion Disciplina: Fundamentos de Computação Gráfica Professor : Marcelo Gattass Allan Carlos Avelino Rocha Departamento de Informática](https://reader036.vdocuments.pub/reader036/viewer/2022081502/552fc15e497959413d8e5b8f/html5/thumbnails/18.jpg)
Departamento de Informática
Ambient OcclusionProjeção de um ponto
Aplicando a matriz a um ponto temos:
onde é ponto projetado no espaço de textura.
Feito isso para obter o ponto em coordenadas cartesianas basta fazer:P(s/q,t/q,r/q,1).
• s/q e t/q posição x,y de um texel• r/q distância do ponto ao plano de projeção
![Page 19: Ambient Occlusion Disciplina: Fundamentos de Computação Gráfica Professor : Marcelo Gattass Allan Carlos Avelino Rocha Departamento de Informática](https://reader036.vdocuments.pub/reader036/viewer/2022081502/552fc15e497959413d8e5b8f/html5/thumbnails/19.jpg)
Departamento de Informática
Ambient Occlusion
Implementação
VECTOR4D point(x,y,z,w);VECTOR4D result = textureMatrix*point;
double s = result.GetX()/result.GetW();double t = result.GetY()/result.GetW();double p = result.GetZ()/result.GetW();
int newx = width*s;int newy = height*t;
float depth = bunny->shadowMap[index(newx,newy,width)];
if ( p <= depth+1e-3){ . . .
![Page 20: Ambient Occlusion Disciplina: Fundamentos de Computação Gráfica Professor : Marcelo Gattass Allan Carlos Avelino Rocha Departamento de Informática](https://reader036.vdocuments.pub/reader036/viewer/2022081502/552fc15e497959413d8e5b8f/html5/thumbnails/20.jpg)
Departamento de Informática
Ambient OcclusionResultados na implementação
![Page 21: Ambient Occlusion Disciplina: Fundamentos de Computação Gráfica Professor : Marcelo Gattass Allan Carlos Avelino Rocha Departamento de Informática](https://reader036.vdocuments.pub/reader036/viewer/2022081502/552fc15e497959413d8e5b8f/html5/thumbnails/21.jpg)
Departamento de Informática
Ambient OcclusionOutros resultados
![Page 22: Ambient Occlusion Disciplina: Fundamentos de Computação Gráfica Professor : Marcelo Gattass Allan Carlos Avelino Rocha Departamento de Informática](https://reader036.vdocuments.pub/reader036/viewer/2022081502/552fc15e497959413d8e5b8f/html5/thumbnails/22.jpg)
Departamento de Informática
Ambient Occlusion
Simples difuse shading model
Ambient occlusion
Simples difuse shading model
Matt Phar
![Page 23: Ambient Occlusion Disciplina: Fundamentos de Computação Gráfica Professor : Marcelo Gattass Allan Carlos Avelino Rocha Departamento de Informática](https://reader036.vdocuments.pub/reader036/viewer/2022081502/552fc15e497959413d8e5b8f/html5/thumbnails/23.jpg)
Departamento de Informática
Ambient Occlusion
![Page 24: Ambient Occlusion Disciplina: Fundamentos de Computação Gráfica Professor : Marcelo Gattass Allan Carlos Avelino Rocha Departamento de Informática](https://reader036.vdocuments.pub/reader036/viewer/2022081502/552fc15e497959413d8e5b8f/html5/thumbnails/24.jpg)
Departamento de Informática
Ambient Occlusion
![Page 25: Ambient Occlusion Disciplina: Fundamentos de Computação Gráfica Professor : Marcelo Gattass Allan Carlos Avelino Rocha Departamento de Informática](https://reader036.vdocuments.pub/reader036/viewer/2022081502/552fc15e497959413d8e5b8f/html5/thumbnails/25.jpg)
Departamento de Informática
Ambient Occlusion