A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Computação Gráfica Modelos de Iluminação Mauricio Cunha Escarpinati Computação Gráfica.

Apresentações semelhantes


Apresentação em tema: "Computação Gráfica Modelos de Iluminação Mauricio Cunha Escarpinati Computação Gráfica."— Transcrição da apresentação:

1 Computação Gráfica Modelos de Iluminação Mauricio Cunha Escarpinati Computação Gráfica

2 Apresentação Objetivos da aula: Apresentar conceitos de iluminação 3D; Tipos de Fontes de Luz; Modelos de Reflexão;

3 Apresentação Justificativa; Dependência que a qualidade de imagens graficamente geradas tem em relação às técnicas de iluminação utilizadas; Variação de técnicas e algoritmos existentes para este fim;

4 Apresentação Abordagem; Será apresentado o problema e algumas possíveis soluções na forma de técnicas e algoritmos; Apresentação de exemplos utilizados por bibliotecas gráficas na manipulação de tais algoritmos; Apresentação prática de um sistema desenvolvido para exemplificar os efeitos das componentes de reflexão no processo de iluminação;

5 Iluminação Introdução O grande objetivo da CG é criar cenas virtuais com o máximo de realismo possível; Para isso busca-se modelos e algoritmos computacionais que descrevam matematicamente objetos e cenas da melhor forma possível; Dessa forma as técnicas de iluminação buscam uma forma de computar a irradiação de um raio de luz; É importante lembrar que o raio de luz é composto por ondas eletromagnéticas;

6 Superfície especular (Polida) Todos os fótons são perfeitamente refletidos Fonte de Luz Fótons de luz Iluminação Interações do fóton de luz na natureza N θ θ

7 Fonte de Luz Fótons de luz Superfícies irregulares (rugosa) a reflexão também se torna irregular Iluminação Interações do fóton de luz na natureza

8 Fonte de Luz Fótons de luz Parte dos fótons são convertidos em calor Iluminação Interações do fóton de luz na natureza

9 Fonte de Luz Fótons de luz Objeto Translúcido (Transparente) Iluminação Interações do fóton de luz na natureza

10 Iluminação de Objetos 3D Objetivos Criar modelos Computacionais para: Simular Fontes de Luz e as devidas emissões de fótons; Dispersão desses fótons na superfície; Recepção nas câmeras; Características desejadas: Concisão; Eficiência; Precisão;

11 Iluminação de Objetos 3D Modelando as Fontes de Luz I L (x,y,z,θ,Φ, ג ) Descreve a intensidade de energia; Saindo de uma Fonte de Luz; Chegando em (x,y,z); Da direção (θ,Φ); Com comprimento de onda ג ; Modelos Empíricos; Idealmente deveriam medir a energia irradiada em todas as situações; Muita Informação; Difícil na prática

12 Iluminação de Objetos 3D Modelando as Fontes de Luz Pensando num modelo digital pode-se assumir que: Todo objeto da cena é potencialmente uma fonte de luz (emissores e refletores); Emissores podem ser entendidos como lâmpadas, sol, estrelas, vela, fogo.. E são caracterizados por suas intensidades ou freqüências; Refletores são quaisquer objetos da cena e são caracterizados pelas propriedades de suas superfícies como cor, material, polimento, etc. Os tipos emissores podem ser classificados como ambiente, natural ou artificial;

13 Iluminação de Objetos 3D Fontes de luz Ambiente

14 Iluminação de Objetos 3D Fontes de luz Ambiente Reflexões indiretas são computacionalmente caras de se calcular (especialmente em tempo real), por isso usa-se um truque: fonte de luz ambiente Não tem características espaciais ou direcionais: ilumina todas as superfícies igualmente; A quantidade de luz refletida depende das propriedades das superfícies;

15 Iluminação de Objetos 3D Fontes de luz Ambiente Para cada comprimento de onda amostrado (R, G, B), a luz ambiente refletida em uma superfície depende de: Propriedade da superfície, k ambiente ; Intensidade, I ambiente da fonte de luz ambiente (constante para todos os pontos em todas as superfícies) I refletida = k ambiente I ambiente

16 Iluminação de Objetos 3D Fontes de luz Ambiente Objeto exibido a frente de um fundo preto onde foi utilizada somente a luz ambiente no processo de renderização

17 Este tipo de fonte é usualmente empregada na elaboração de luz ambiente; Algumas simplificações devem ser assumidas: A direção de iluminação é constante para todas as superfícies da cena; Todos os raios de luz são paralelos Como se a fonte estivesse no infinito; Ideal para representação para luz do Sol; Inclinação dos raios em relação a superfície são importantes; Posição do observador não é importante; Iluminação de Objetos 3D Fontes de luz Direcionais

18 Iluminação de Objetos 3D Fontes de luz Direcionais Comparando:

19 Iluminação de Objetos 3D Fontes de Luz Pontuais

20 Iluminação de Objetos 3D Fontes de Luz Spot Lights

21 Iluminação de Objetos 3D Reflexões Em Computação Gráfica, a manipulação da luz assume um papel fundamental no aspecto realístico da apresentação; A maioria dos objetos ao nosso redor não emite luz própria, pelo contrário, refletem a radiação nele incidentes; Neste sentido, vários são os algoritmos computacionais que procuram estimar as taxas e tipos de reflexão de cada objeto no processo de iluminação de uma cena.

22 Iluminação de Objetos 3D Modelo Geral da Reflexão na Superfície Pensando Matematicamente no processo de reflexão podemos definir: R s (x L, y L, x R, y R, ג) Descreve a quantidade de energia incidente; Chegando da direção (x L, y L ); Saindo na direção (x R, y R ); Com comprimento de onda ג ; Modelos Empíricos: Idealmente deveriam medir energia radiante para todas as combinações de ângulos de incidência; Muita informação Difícil na prática

23 Iluminação de Objetos 3D Reflexão Difusa Reflexão difusa ideal Um refletor difuso ideal, microscopicamente, é superfície extremamente rugosa Devido a essas variações microscópicas, raio de luz recebido pela superfície se reflete igualmente em qualquer direção do hemisfério

24 Iluminação de Objetos 3D Reflexão Difusa dL=dAcos(90-θ)

25 Iluminação de Objetos 3D Reflexão Difusa Superfícies difusas ideais refletem de acordo com a lei do co-seno de Lambert; A energia refletida de uma fonte de luz em uma dada direção por um pequeno pedaço de uma superfície é proporcional ao co-seno do ângulo entre aquela direção e a normal da superfície naquele pequeno pedaço São as chamadas: superfícies lambertianas; Intensidade refletida depende da orientação da superfície em relação à fonte de luz, mas independe da direção de visualização do observador:

26 Iluminação de Objetos 3D Computando a Reflexão Difusa O ângulo entre a normal da superfície e o raio incidente é chamado de ângulo de incidência: I difusa = k d I 0 cosθ Onde I difusa é a intensidade de luz refletida difusamente, I 0 é a intensidade de luz inicial recebida, k d representa a refletividade de luz difusa da superfície e θ o ângulo que a direção do feixe de luz faz com a superfície. Na prática cosθ pode ser determinado pelo produto interno de l e n I difusa = k d I 0 (n l)

27 Iluminação de Objetos 3D Reflexão Difusa

28 Iluminação de Objetos 3D Exemplo de Incidência Difusa Uma Esfera Lambertiana Vista com Diferentes ângulos de Incidência

29 Superfícies brilhantes exibem reflexão especular (Metal Polido); O brilho da luz sobre superfície especular gera manchas brilhantes sobre o objeto: specular highlight; Onde esses highlights aparecem é em função da posição do observador; Reflexão especular depende da visão do observador. Iluminação de Objetos 3D Reflexão Especular

30 Iluminação de Objetos 3D Física da Reflexão No nível microscópico a superfície especular deve ser muito lisa; Raios de luz tendem a bater e refletir como espelhos; Reflexão segue a Lei de Snell; O raio incidente e o refletido estão no mesmo plano que o vetor normal à superfície; O ângulo que o raio refletido forma com a normal à superfície é igual ao ângulo formado pelo raio incidente e a normal;

31 Iluminação de Objetos 3D Algoritmos que Tratam a Reflexão Especular Segundo a literatura especializada, não são muitos os algoritmos que calculam a contribuição especular na formação de uma cena; Dentre os principais estão: O algoritmo de Phong que é baseado em um modelo de fonte de luz Pontual; Cook-Torrance, que considera a energia incidente sobre o objeto;

32 Iluminação de Objetos 3D Algoritmo de Phong Apontado por muitos como o mais utilizado para cálculo de luz especular; Esse modelo considera a relação especular como uma função do ângulo que a direção de reflexão faz com o observador; É dado em função da cor apenas da fonte de luz;

33 Iluminação de Objetos 3D Algoritmo de Phong I especular = k s I 0 (cosΦ) n Onde I especular é a intensidade de luz refletida especularmente; I 0 é a intensidade de luz inicial recebida, k s representa a refletividade de luz especular da superfície, Φ o ângulo entre o reflexo ideal e o vetor de visualização do observador e n é uma constante que determina a especularidade da superfície Na prática cos Φ pode ser determinado pelo produto interno de v e r I especular = k s I 0 (v r) n

34 Iluminação de Objetos 3D Reflexão Especular

35 Iluminação de Objetos 3D Reflexão Especular (Modelo de Blinn) Blinn adota uma variação em relação ao método proposto por Phong; Segundo o modelo proposto por Blin, a relação de especularidade é dada em função do ângulo entre a fonte de luz e um ângulo que determina a bissetriz da direção da fonte de luz e o observador; I especular = k s I 0 (n h) n

36 Iluminação de Objetos 3D Comparação

37 Iluminação de Objetos 3D Cook-Torrance Distingui-se do Modelo de Phong pelos seguintes fatores: É baseado na taxa de energia incidente ao invés da intensidade; Os termos especulares são baseados no modelo físico micro facetado; As cores mudam de acordo com o brilho; É baseado nas leis de Fresnel e mede as características do material; Leis de Fresnel: Luz incidente normal reflete cor da superfície; Luz incidente tangencial reflete cor da luz; Reflexão aumenta à medida que a incidência se torna tangencial;

38 Iluminação de Objetos 3D Cook-Torrance Componente especular F – termo de Fresnel D – termo de Roughness G – termo geométrico

39 Iluminação de Objetos 3D Cook-Torrance (Termo de Fresnel) Coeficientes: r – ângulo de reflexão t – ângulo de transmissão (refração do material) c = cos r = L H = V H g 2 = 2 + c 2 – 1 Indíce de refraxão complexo; O Algoritmo Completo de Fresnel, implementado em Pascal pode ser obtido em 3D Computer Graphics de Alan Watt (pp );

40 Iluminação de Objetos 3D Cook-Torrance (Rugosidade) Modelo estatístio de reflectância da luz Centrado na direção de reflexão R Modelo Blinn Função Beckmann and Spizzichino (1963) m também pode ser considerada, segundo Alan Watt (97) como sendo a média quadradica das inclinações das microfaces da superfície; m

41 Iluminação de Objetos 3D Cook-Torrance (Termo Geométrico) Shadowing (sombreando) –Luz incidente não alcança o material Masking (mascarando) –Luz refletida não alcança o observador A Literatura indica utilizar o menor coeficiente G m = min (G s, G m )

42 Iluminação de Objetos 3D Composição dos Métodos É muito comum na literatura encontrar as funções de reflexo já compostas; Por Exemplo: No caso do Método de Phong é comum encontrar a função já com as componentes de de reflexão ambiente e difusa incorporadas ao método;

43 Iluminação de Objetos 3D Várias Fontes de Luz

44 Iluminação de Objetos 3D Exemplos práticos; A partir de agora serão apresentados alguns exemplos de como os conceitos até aqui apresentados são tratados por uma biblioteca gráfica amplamente utilizada, o OpenGL

45 Iluminação de Objetos 3D Exemplos Práticos (OpenGL) Controle para: Adição e habilitação de fontes de luz na cena; Controle de componentes ambiente, difusa e especular; Posicionamento e fontes de luz; Controle de atenuação de fontes de luz; Especificação de vetores normais; Especificação de propriedades materiais dos objetos;

46 Iluminação de Objetos 3D Exemplos Práticos (OpenGL) Habilitando e desabilitando a Iluminação: GLvoid glEnable(GL_LIGHTING); GLvoid glDisable(GL_LIGHTING); Fontes de luz tem propriedades como cor, posição e direção, que são especificadas através e funções; void glLight{if}(Glenum light, Glenum paname, TYPE param); void glLight{if}(Glenum light, Glenum paname, TYPE *param); Onde: light pode ser GL_LIGHT0, GL_LIGHT1 até GL_LIGHT7; A propriedade sendo definida é dada por pname; Param indica o valor da propriedade pname (ou um vetor de valores)

47 Iluminação de Objetos 3D Exemplos Práticos (OpenGL)

48 Iluminação de Objetos 3D Exemplos Práticos (OpenGL)

49 Habilitando Múltiplas fontes de luz: GLvoid glEnable(GL_LIGHTING ); GLvoid glDisable(GL_LIGHTING ); é um número entre 0 e maxLights; maxLights do sistema pode ser obtida com: glGetIntegerv(GL_MAX_LIGHTS, &maxLights) Iluminação de Objetos 3D Exemplos Práticos (OpenGL)

50 Iluminação de Objetos 3D Exemplos Práticos (OpenGL) Parâmetros GL_POSITION de glLightfv(): Coordenadas homogêneas (x,y,z,w); w=0, luz direcional, no infinito; w=1, luz localizada na cena; Valor default é (0.0, 0.0, 1.0, 0.0) (i.e, da direção do eixo z no infinito)

51 Iluminação de Objetos 3D Exemplos Práticos (OpenGL) Simulação de atenuação da fonte de luz de acordo com a distância da mesma em relação aos objetos: Constante Não existe atenuação; Linear; A intensidade diminui linearmente com a distância; Quadrática; A intensidade diminui quadraticamente com a distância;

52 Iluminação de Objetos 3D Exemplos Práticos (OpenGL) glLightfv(GL_LIGHT0, GL_Position, light_posicion); glLightfv(GL_LIGHT0, GL_CONSTANT_ATENENUATION, 2.0); glLightfv(GL_LIGHT0, GL_LINEAR_ATENENUATION, 0.0); glLightfv(GL_LIGHT0, GL_QUADRATIC_ATENENUATION, 0.0); Pode-se combinar os três tipos de atenuação com valores diferentes de zero para cada um dos atributos;

53 Iluminação de Objetos 3D Exemplos Práticos (OpenGL) Reflexão Difusa e Ambiente; Reflexão Especular; Emissão; Alterações nos materiais;

54 Iluminação de Objetos 3D Exemplos Práticos (OpenGL) OpenGL permite controlar: Reflexão difusa; Reflexão ambiente; Reflexão especular ou brilhos (highlights); Brilho do objeto; Emissividade do objeto (luz emitida por ele);

55 Iluminação de Objetos 3D Avaliação Os alunos deverão desenvolver os seguintes temas com trabalho sobre o tema: Pesquisar se os outros algoritmos estudados, como o caso do método de Blinn e Cook-Torrance são disponibilizados em bibliotecas gráficas, como o próprio OpenGL, DirectX, VTK, etc.; Implementar um modelo de iluminação simples que envolva componentes de reflexão ambiente, difusa e especular a partir de uma fonte de luz direcional;


Carregar ppt "Computação Gráfica Modelos de Iluminação Mauricio Cunha Escarpinati Computação Gráfica."

Apresentações semelhantes


Anúncios Google