Iluminação e Sombreamento

Documentos relacionados
Iluminação e Sombreamento

Computação Gráfica II

Iluminação e Sombreamento

Introdução ao Processamento e Síntese de imagens Rendering 2016

Representação de Objetos e Cenas. Soraia Musse

CÁLCULOS DE ILUMINAÇÃO E SOMBREAMENTO

Pipeline Gráfico Cluter & Durand, MIT

Técnicas de rendering. Realismo

Curvas e Superfícies Paramétricas

Computação Gráfica. Iluminação

Computação Gráfica. Iluminação

PEF 5743 Computação Gráfica Aplicada à Engenharia de Estruturas

Fundamentos de Computação Gráfica. Iluminação

Modelagem Geométrica

Computação Gráfica - 13

Coloração (Shading)e Iluminação global

Introdução ao Processamento Gráfico

Sistemas de Cores. Leandro Tonietto Processamento Gráfico Jogos Digitais set-09

INF1339 Computação Gráfica Tridimensional. Waldemar Celes. 10 de Agosto de 2010

Visibilidade. Apontamentos CG + Edward Angel, Sec Instituto Superior Técnico Computação Gráfica 2009/2010

Visibilidade. Licenciatura em Engenharia Informática e de Computadores Computação Gráfica. Edward Angel, Cap. 7 Apontamentos CG

Introdução à Computação Gráfica Iluminação. Claudio Esperança Paulo Roma Cavalcanti

Computação Gráfica. Modelo de sombreamento Determina como o modelo de iluminação será aplicado e quais seus argumentos

Fundamentos da Computação Gráfica

Iluminação em OpenGL. André Tavares da Silva.

Terceiro Trabalho Ray Tracing

Rendering. Modelos de Iluminação Rendering de Modelos Poligonais Métodos de Tonalização

1º Teste Computação Gráfica

Estudando para a P2-2018

Iluminação (lighting) e Sombreamento (shading)

Curso de extensão em Blender Prof. Luiz Gonzaga Damasceno

Processamento de Malhas Poligonais

Iluminaçao. Os modelos de Iluminação são técnicas usadas para calcular a intensidade da cor de um ponto a ser exibido.

Computação Gráfica - 09

2º Exame. Computação Gráfica

Construção de objeto e superfícies em OpenGL

Rendering de Polígonos. Determinação de Superfícies Visíveis. Back Face Culling. Back Face Culling. Back Face Culling. Back Face Culling.

Computação Gráfica - 09

UNIVERSIDADE FEDERAL FLUMINENSE Pedro Martins Menezes. Um estudo dos estágios dos pipelines gráficos

A terceira dimensão. Modelagem tridimensional Elaboração tridimensional Realidade virtual

Computação Gráfica. Licenciatura em Engenharia Informática e de Computadores Alameda / Taguspark. Terceiro Teste 19 de Maio de 2012

Aula 2 Reflexão da luz e espelhos planos e esféricos

Computação Gráfica - 01

27/03/2017 OPERAÇÕES ARITMÉTICAS NDVI E RAZÃO DE BANDAS AULA 04 RAZÃO DE BANDAS. Ex: Realce de minerais de Ferro = ρ v / ρ A

MAT2457 ÁLGEBRA LINEAR PARA ENGENHARIA I Gabarito da 2 a Prova - 1 o semestre de 2015

Fundamentos da Computação Gráfica Lista de Exercícios Marcelo Gattass TeCGraf/Departamento de Informática/PUC-Rio 19jun2003

POV-Ray. André Tavares da Silva.

Teclado Virtual. MAC0420/MAC5744 Introdução Computação Gráfica. IME Instituto de Matemática e Estatística USP Universidade de São Paulo

DIFRAÇÃO DA LUZ DE UM LASER POR FENDAS

Resumo. Ray Tracing. Introdução. Ray Casting Básico. Idéia

Iluminando o Cenário

Introdução ao Processamento e Síntese de imagens -Linhas e superfícies escondidas

FÍSICA MÓDULO 14 A REFLEXÃO DA LUZ EM ESPELHOS PLANOS E ESFÉRICOS. Professor Sérgio Gouveia

1º Exame/2º Teste Computação Gráfica

Prof. Fernando V. Paulovich 3 de agosto de SCC Computação Gráca

Computação Gráfica. Representação e Modelagem

REFLEXÃO E REFRAÇÃO DA LUZ

Modelos Globais de Iluminação

1678: teoria ondulatória para a luz (anterior e menos completa que o eletromagnetismo de Maxwell)

Segunda Lista - Lei de Gauss

Transcrição:

Iluminação e Sombreamento Leandro Tonietto Computação Gráfica Unisinos ltonietto@unisinos.br http://professor.unisinos.br/ltonietto/jed/cgr/iluminacao.pdf ago-11 Baseado no material do prof. Christian Hofsetz e de Cristiano Franco 30-Mar-11 Leandro Tonietto

Sumário Introdução Modelos de iluminação Luz ambiente Reflexão difusa Atenuação atmosférica Atenuação especular Modelo de iluminação de Phong Múltiplas fontes de Luz Modelos de sombreamento de polígonos Flat shading Interpolated shading Polygon-mesh shading Gouraud shading Phong shading Problemas com sombreamento por interpolação Iluminação em OpenGL 30-Mar-11 Leandro Tonietto 2

Introdução Idéia é determinar uma cor numa superfície, considerando suas propriedades (cor, textura, material,...) e fatores externos, como a luz que incide sobre a superfície, num determinado ponto da mesma. Shading model x ilumination model Modelo de sombreamento determina quando o modelo de iluminação é aplicado e quais argumentos ele recebe. Diversos modelos são propostos para iluminação. Veremos modelos mais simples e que resolvem o problema de forma eficiente e com menor custo computacional. 30-Mar-11 Leandro Tonietto 3

Modelos de iluminação Estes modelos determinam como a luz interfere (como é recebida) numa superfície. Isto implica em alterações na visualização do objeto, ou seja, em como ele será renderizado. Dependendo da luz que incide sobre um objeto, ele muda completamente a sua colorização. Fotografia que mostra um mesmo objeto do mundo real iluminado com duas luzes diferentes. 30-Mar-11 Leandro Tonietto 4

Luz ambiente Num modelo de iluminação ambiente, fatores externos de iluminação são ignorados; um objeto é desenhado apenas com a cor que é intrínseca a ele. Apenas a cor dele é renderizada. Imaginem retirada de [2]: cena renderizada com iluminação ambiente apenas 30-Mar-11 Leandro Tonietto 5

Luz ambiente Este é o modelo de iluminação mais simples possível: um objeto que é iluminado por si mesmo. Equação de iluminação: I = k i I é a intensidade resultante k i é a intensidade intrínseca do objeto Processo de calcular a equação de iluminação em um ponto também chama-se iluminar um objeto. 30-Mar-11 Leandro Tonietto 6

Luz ambiente Agora, ao invés de luminosidade própria, consideremos a existência de uma fonte de luz sem direção específica, resultante das reflexões entre as muitas superfícies presentes no ambiente: conhecida como luz ambiente. Equação: I = I a k a I é a intensidade resultante I a é a intensidade da luz ambiente, constante para todos os objetos da cena k a é o coeficiente de reflexão ambiente [0..1]. É o quanto da luz ambiente é refletida pelo objeto. É a propriedade do material do objeto. 30-Mar-11 Leandro Tonietto 7

Reflexão Difusa A intensidade iluminação dos objetos é dada pela intensidade da luz ambiente. Entretanto, até momento, eles ainda são iluminados de maneira uniforme ao longo de sua superfície. Ou eles são mais claros, ou são mais escuros. Considere agora uma fonte de luz pontual, cujos raios emanam uniformemente de um único ponto. O iluminação das partes do objeto varia de acordo com a distância e a direção em relação ao ponto de luz. 30-Mar-11 Leandro Tonietto 8

Reflexão Difusa Alguns materiais apresentam reflexão difusa Essas superfícies refletem a energia luminosa igualmente, sob qualquer ângulo de visão, porque elas refletem luz com igual intensidade em todas as direções. O brilho dependerá somente do ângulo formado entre a direção da fonte da luz e a normal da superfície Exemplo de reflexão difusa em [2]. 30-Mar-11 Leandro Tonietto 9

Reflexão Difusa Quantidade de luz incidente em uma área infinitesimal da é proporcional ao cosseno Θ Quantidade de área vista é inversamente proporcional ao cosseno do ângulo Quantidade de luz refletida para o observador é diretamente proporcional ao cosseno do ângulo entre a direção do observador V e N (Lei de Lambert) Θ Logo, esses dois fatores se cancelam Θ Ex: Quando o ângulo de visão cresce, o observador vê mais área, mas a quantidade de luz por área é proporcionalmente menor Θ 30-Mar-11 Leandro Tonietto 10

Reflexão Difusa Sendo assim, reflexão difusa independe da direção do observador sendo proporcional somente ao cosseno de Θ. I = I p k d cos Θ I p Intensidade da fonte de luz k d coeficiente de reflexão difusa (constante [0..1]) Considerando vetores normalizados: I = I p k d (N.L) Combinando com componente de ambiente I = I a k a + I p k d (N.L) 30-Mar-11 Leandro Tonietto 11

Reflexão Difusa 30-Mar-11 Leandro Tonietto 12

Reflexão Difusa Caso projetarmos duas superfícies paralelas de material idêntico, iluminadas a partir do observador, equação atual não distinguirá onde termina uma superfície e onde começa outra, não importando a distância. Para simular esta diferença de distância, criou-se um fator de atenuação da fonte de luz (f att ) I = I a k a + f att I p k d (N.L) 30-Mar-11 Leandro Tonietto 13

Reflexão Difusa Atenuação da fonte de luz (f att ): X A primeira equação é a uma solução mais trivial para atenuação um cálculo linear de distância. Entretanto, na prática, se a luz está mais longe há pouca variação em os objetos; se ela está mais próxima, ela pode variar mais. c 1, c 2 e c 3 são constantes definidas pelo usuário. 30-Mar-11 Leandro Tonietto 14

Reflexão Difusa Considerando as componentes de cor, a fórmula deve multiplicar cada termo pela cor do objeto, assim como é percebido pelo ambiente e pela cor da difusa. Portanto: I λ = I aλ k aλ O λ + f att I pλ k dλ O dλ (N.L) Onde: I λ é a intensidade resultante para cada canal RGB λ representa um canal por vez I aλ é a intensidade da luz ambiente para cada canal RGB I pλ é a intensidade resultante para cada canal RGB O λ é cor do objeto para cada canal RGB O dλ é cor da luz difusa para cada canal RGB 30-Mar-11 Leandro Tonietto 15

Atenuação atmosférica Simulação de atenuações atmosféricas ou condições de visibilidade do ambiente (depth cueing): fog por exemplo. Situações aonde os objetos possuem brilho diferente conforme a profundidade. Similar a idéia de atenuação da fonte luz. Idéia é modificar uma Intensidade já calculada Modificação será determinada por fatores de escala (sf e sb) que indicarão o blending da intensidade com uma cor sugerida para o efeito da atenuação Sugestão de leitura a respeito de depth cueing: http://www.gamedev.net/reference/articles/article861.asp 30-Mar-11 Leandro Tonietto 16

Atenuação atmosférica I λ = S 0 I λ + (1-S 0 )I dcλ S 0 é calculado a partir do Z do ponto I dcλ é a cor do fator de atenuação S 0 = S b + (Z 0 Z b )-(S f -S b ) (Z f Z b ) Distância da luz é constante, Ia=Ip=1.0; ka=0.1; kd=0.9; zf=1.0; zb=0.0; sf=1.0; sb=0.1; raio=0.09; z=1.0, 0.77, 0.55, 0.32, 0.09 30-Mar-11 Leandro Tonietto 17

Reflexão especular Círculos brilhantes (highlight) que aparecem em superfícies Para observar: Ilumine uma maçã vermelha com uma luz branca Aparecerá um highlight, causado pela reflexão especular Neste ponto, a maçã não parece vermelha, e sim branca, a cor da luz incidente Movimentando a cabeça nota-se que o highlight também move-se Superfícies refletem luz de forma diferente em diferentes direções Portanto, o observador recebe a cor da reflexão da luz no objeto. 30-Mar-11 Leandro Tonietto 18

Reflexão especular Phong desenvolveu em 1975, um modelo para a parcela de reflexão especular que assumia que: Máxima reflexão especular ocorre quando α é zero e cai rapidamente quando α cresce Essa mudança é representada por cos n α, onde n é o expoente de reflexão especular Valores de n variam de 1 até centenas, dependendo do material simulado 30-Mar-11 Leandro Tonietto 19

Reflexão especular Acrescentando a especular na equação (considerando-se os vetores normalizados): I λ = I aλ k aλ O λ + f att I pλ [k dλ O dλ (N.L) + k s (R.V) n ] incluindo a cor especular I λ = I aλ k aλ O λ + f att I pλ [k dλ O dλ (N.L) + k s O sλ (R.V) n ] Onde: I λ é a intensidade resultante para cada canal RGB I aλ é a intensidade da luz ambiente para cada canal RGB I pλ é a intensidade resultante para cada canal RGB O λ é cor do objeto para cada canal RGB k d é o coeficiente de contribuição da difusa k s é o coeficiente de contribuição da especular O dλ é cor da luz difusa para cada canal RGB O sλ é cor da luz para especular 30-Mar-11 Leandro Tonietto 20

Reflexão especular Efeito da especular: Ia=Ip=1.0, Ka=0.1, Kd=0.45 n=3.0, 5.0, 10.0, 27.0, 200.0 Ks=0.1, 0.25, 0.5 30-Mar-11 Leandro Tonietto 21

Reflexão especular Múltiplas fontes de luz I λ = I aλ k a O λ + Σ f att i I pλi [k d O dλ (N.L i ) + k s O sλ (R i.v)n ] 1 i m 30-Mar-11 Leandro Tonietto 22

Modelos de sombreamento Como preencher um polígono considerando aspectos de iluminação? Solução 1: uma idéia é calcular a normal em cada ponto visível da superfície e aplicar um modelo de iluminação para cada ponto (força bruta). Problema: Custo computacional é muito elevado. Solução 2: modelos de sombreamento. Executam o preenchimento do polígono de forma eficaz e eficiente. 30-Mar-11 Leandro Tonietto 23

Modelos de sombreamento Modelos estudados: Flat shading ou constant shading Interpolated shading Polygon mesh shading Gouraud Shading Phong Shading 30-Mar-11 Leandro Tonietto 24

Flat shading 30-Mar-11 Leandro Tonietto 25

Flat shading Neste modelo de preenchimento (ou sombreamento), a cor de todos os pontos de polígono é constante. 30-Mar-11 Leandro Tonietto 25

Flat shading Neste modelo de preenchimento (ou sombreamento), a cor de todos os pontos de polígono é constante. O modelo de iluminação é aplicado uma vez para cada polígono. 30-Mar-11 Leandro Tonietto 25

Flat shading Neste modelo de preenchimento (ou sombreamento), a cor de todos os pontos de polígono é constante. O modelo de iluminação é aplicado uma vez para cada polígono. Abordagem torna-se válida diante das seguintes condições: 30-Mar-11 Leandro Tonietto 25

Flat shading Neste modelo de preenchimento (ou sombreamento), a cor de todos os pontos de polígono é constante. O modelo de iluminação é aplicado uma vez para cada polígono. Abordagem torna-se válida diante das seguintes condições: Fonte de luz situa-se no infinito, então N.L é constante ao longo da face 30-Mar-11 Leandro Tonietto 25

Flat shading Neste modelo de preenchimento (ou sombreamento), a cor de todos os pontos de polígono é constante. O modelo de iluminação é aplicado uma vez para cada polígono. Abordagem torna-se válida diante das seguintes condições: Fonte de luz situa-se no infinito, então N.L é constante ao longo da face Observador situa-se no infinito, então N.V é constante ao longo da face 30-Mar-11 Leandro Tonietto 25

Flat shading Neste modelo de preenchimento (ou sombreamento), a cor de todos os pontos de polígono é constante. O modelo de iluminação é aplicado uma vez para cada polígono. Abordagem torna-se válida diante das seguintes condições: Fonte de luz situa-se no infinito, então N.L é constante ao longo da face Observador situa-se no infinito, então N.V é constante ao longo da face O polígono representa uma superfície sendo modelada e não uma aproximação para uma superfície curva 30-Mar-11 Leandro Tonietto 25

Flat shading Neste modelo de preenchimento (ou sombreamento), a cor de todos os pontos de polígono é constante. O modelo de iluminação é aplicado uma vez para cada polígono. Abordagem torna-se válida diante das seguintes condições: Fonte de luz situa-se no infinito, então N.L é constante ao longo da face Observador situa-se no infinito, então N.V é constante ao longo da face O polígono representa uma superfície sendo modelada e não uma aproximação para uma superfície curva Se duas primeiras condições são falsas, precisamos de algum método para determinarmos L e V, como centro do polígono ou primeiro vértice 30-Mar-11 Leandro Tonietto 25

Flat shading zneste modelo de preenchimento (ou sombreamento), a cor de todos os pontos de polígono é constante. O modelo de iluminação é aplicado uma vez para cada polígono. Abordagem torna-se válida diante das seguintes condições: Fonte de luz situa-se no infinito, então N.L é constante ao longo da face Observador situa-se no infinito, então N.V é constante ao longo da face O polígono representa uma superfície sendo modelada e não uma aproximação para uma superfície curva Se duas primeiras condições são falsas, precisamos de algum método para determinarmos L e V, como centro do polígono ou primeiro vértice 30-Mar-11 Leandro Tonietto 25

Interpolated shading Proposto por Wylie, Romney, Evans e Erdahl em 1967 Informação de sombreamento é interpolada linearmente ao longo de um triângulo a partir dos valores determinados para seus vértices Interpolação do sombreamento não é fisicamente correta 30-Mar-11 Leandro Tonietto 26

Polygon mesh shading Problemas de superficíes curvas: aparência facetada. Flat Shading e Interpolated Shading geram resultados com essas características Efeito de Mach Band Diferença da intensidade em uma aresta é acentuada se existe uma descontinuidade de uma intensidade Causado por um fenômeno ótico Métodos apresentados até aqui apresentam esse efeito Aplicam-se a cada polígono individualmente 30-Mar-11 Leandro Tonietto 27

Polygon mesh shading Polígonos sombreados individualmente em [2]. 30-Mar-11 Leandro Tonietto 28

Polygon mesh shading Existem dois modelos para malhas poligonais que aproveitam as informações fornecidas pelos polígono adjacentes para simular uma superfície suave Gouraud Shading Phong Shading 30-Mar-11 Leandro Tonietto 29

Gouraud shading Também conhecido como sombreamento por interpolação de intensidade ou sombreamento por interpolação de cor Elimina descontinuidades de intensidade Não elimina completamente mudanças de intensidade Estende conceito de sombreamento interpolado, considerando a superfície e não cada polígono individualmente 30-Mar-11 Leandro Tonietto 30

Gouraud shading Necessita da normal de cada vértice Pode-se obter esta normal fazendo a média entre as normais das superfícies às quais o vértice pertence Ver slides do Christian 30-Mar-11 Leandro Tonietto 31

Referências bibliográficas 1. Slides sobre CG dos professores: Christian Hofsetz, Cristiano Franco, Marcelo Walter e Soraia Musse. 2. FOLEY!! 3. WRIGHT Jr., Richard S; LIPCHAK, Benjamin; HAEMEL, Nicholas. OpenGL Superbible: Comprehenive Tutorial and Reference. 4 ed. Addison-Wesley, 2007. 30-Mar-11 Leandro Tonietto 32