Carregar apresentação
A apresentação está carregando. Por favor, espere
PublicouBernardo Isabella Alterado mais de 9 anos atrás
1
Ambient Occlusion Disciplina: Fundamentos de Computação Gráfica Professor : Marcelo Gattass Allan Carlos Avelino Rocha Departamento de Informática
2
Introdução Iluminação Global Tradicional Não provoca adequado efeito Realístico Motivação: Irradiação constante e adirecional
3
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 modelos de reflexão local, tendo em conta a atenuação da luz devido a oclusão.
4
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.
5
Departamento de Informática Introdução Cinema:
6
Departamento de Informática Introdução
7
Departamento de Informática Introdução Visualização Científica
8
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 longo do hemisfério.
9
Departamento de Informática Ambient Occlusion Gems 1 – “Ambient Occlusion” desenvolvido por Matt Pharr e Simon Green, 2004., Informação necessária Acessibilidade do ponto Média da direção unoccluded (bent normal)
10
Departamento de Informática Ambient Occlusion Abordagem inside-out X outside-in Inside-out
11
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
12
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);
13
Departamento de Informática Ambient Occlusion, Shadow Map - bunny
14
Departamento de Informática Ambient Occlusion Algoritmo
15
Departamento de Informática Ambient Occlusion Textura Projetiva Projeção de imagens sobre superfícies Exemplo: projetor de slides
16
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]
17
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
18
Departamento de Informática Ambient Occlusion Projeçã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
19
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){...
20
Departamento de Informática Ambient Occlusion Resultados na implementação
21
Departamento de Informática Ambient Occlusion Outros resultados
22
Departamento de Informática Ambient Occlusion Simples difuse shading model Ambient occlusion Simples difuse shading model Matt Phar
23
Departamento de Informática Ambient Occlusion
24
Departamento de Informática Ambient Occlusion
25
Departamento de Informática Ambient Occlusion
Apresentações semelhantes
© 2024 SlidePlayer.com.br Inc.
All rights reserved.