Modelos de Iluminação e sombreamento

Transcrição

Modelos de Iluminação e sombreamento
Iluminação e Sombreamento
Iluminação e Sombreamento
Sumário
• Introdução
• Modelos de Iluminação
–
–
–
–
–
–
Iluminação e Sombreamento
Luz Ambiente
Reflexão Difusa
Atenuação Atmosférica
Reflexão Especular
Modelo de Iluminação de Phong
Múltiplas Fontes de Luz
• Modelos de Sombreamento para Polígonos
Baseado no material de Cristiano Franco
– Flat Shading
– Interpolated Shading
– Polygon-Mesh Shading
• Gouraud Shading
• Phong Shading
– Problemas com o Sombreamento por Interpolação
Computação Gráfica - Unisinos – GT-JEDi – Prof. Christian Hofsetz
1
Iluminação e Sombreamento
Computação Gráfica - Unisinos – GT-JEDi – Prof. Christian Hofsetz
2
Iluminação e Sombreamento
Luz Ambiente
Introdução
• Modelo de iluminação mais simples
• Objetivo principal
– Utiliza apenas a intensidade do objeto, sem fontes de luz
externas
– Objeto com iluminação própria
– Mostrar como sombrear superfícies baseando-se na
posição, orientação e características das superfícies e
fontes de luz que as iluminam
• Equação de iluminação
• Modelo de Iluminação
• Modelo de Sombreamento
– I = Ki
• Processo de calcular a equação de iluminação em um
ponto também chama-se iluminar um objeto
– Determina quando o modelo de iluminação é aplicado e
quais argumentos ele recebe
Computação Gráfica - Unisinos – GT-JEDi – Prof. Christian Hofsetz
3
Iluminação e Sombreamento
Computação Gráfica - Unisinos – GT-JEDi – Prof. Christian Hofsetz
4
Iluminação e Sombreamento
Luz Ambiente
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
– I = Ia.Ka
• Ia - intensidade da luz ambiente
• Ka - coeficiente de reflexão ambiente
– Propriedade do material
Computação Gráfica - Unisinos – GT-JEDi – Prof. Christian Hofsetz
5
Computação Gráfica - Unisinos – GT-JEDi – Prof. Christian Hofsetz
6
1
Iluminação e Sombreamento
Iluminação e Sombreamento
Reflexão Difusa
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
• Objetos iluminados pela luz ambiente são mais ou
menos iluminados de acordo com a intensidade do
ambiente (Ia)
• Mas são uniformemente iluminados ao longo de suas
superfícies
• Agora, consideraremos uma fonte de luz pontual, cujos
raios emanam uniformemente de um único ponto
• A iluminação do objeto varia de acordo com a direção e
a distância desta fonte de luz
Computação Gráfica - Unisinos – GT-JEDi – Prof. Christian Hofsetz
7
Iluminação e Sombreamento
Computação Gráfica - Unisinos – GT-JEDi – Prof. Christian Hofsetz
Iluminação e Sombreamento
Reflexão Difusa
•
•
•
•
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
–
8
• Sendo assim, reflexão difusa independe da direção
do observador sendo proporcional somente ao
cosseno de θ.
–
–
–
–
Ex: Quando o ângulo de visão cresce, o
observador vê mais área, mas a quantidade de
luz por área é proporcionalmente menor
I = Ip Kd cos θ
Ip= Intensidade da fonte de luz
Kd= coeficiente de reflexão difusa (constante [0,1])
Normalizando vetores:
• I = Ip Kd (N.L)
• Combinando com componente de ambiente
– I = Iaka + IpKd (N.L)
Computação Gráfica - Unisinos – GT-JEDi – Prof. Christian Hofsetz
9
Iluminação e Sombreamento
Computação Gráfica - Unisinos – GT-JEDi – Prof. Christian Hofsetz
10
Iluminação e Sombreamento
Reflexão Difusa
Atenuação da Fonte de Luz
• 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 (fatt)
Kd= 0.4, 0.55, 0.7, 0.85, 1.0
– I = Iaka + fattIpKd (N.L)
• fatt é definido como
– Equação 14.8
Ia=Ip=1.0, Kd=0.4, Ka=0.0, .015, 0.3, 0.45, 0.6
Computação Gráfica - Unisinos – GT-JEDi – Prof. Christian Hofsetz
11
Computação Gráfica - Unisinos – GT-JEDi – Prof. Christian Hofsetz
12
2
Iluminação e Sombreamento
Iluminação e Sombreamento
Atenuação Atmosférica
Atenuação Atmosférica
• Para simular idéia de atenuação atmosférica do objeto até o
observador usa-se depth cueing
• 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
Distância da luz é constante,
Ia=Ip=1.0;
Equações 14.11 e 14.12
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
Computação Gráfica - Unisinos – GT-JEDi – Prof. Christian Hofsetz
13
Iluminação e Sombreamento
Computação Gráfica - Unisinos – GT-JEDi – Prof. Christian Hofsetz
Iluminação e Sombreamento
Reflexão Especular
•
•
•
Reflexão Especular de Phong
•
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
–
14
•
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 cosn α, onde n é o expoente de reflexão
especular
• Valores de n variam de 1 até centenas, dependendo do material
simulado
A equação de iluminação fica
considerando vetores normalizados,
Iλ = IaλkaOdλ + fattIpλ[KdOdλ(N.L) + Ks(R.V)n]
Superfícies refletem luz de forma diferente em diferentes
direções
incluindo a cor especular
Iλ = IaλkaOdλ + fattIpλ[KdOdλ(N.L) + KsOs(R.V)n]
Computação Gráfica - Unisinos – GT-JEDi – Prof. Christian Hofsetz
15
Iluminação e Sombreamento
Computação Gráfica - Unisinos – GT-JEDi – Prof. Christian Hofsetz
16
Iluminação e Sombreamento
Reflexão Especular
Múltiplas Fontes de Luz
• Existindo m fontes de luz, basta somarmos os
termos de cada fonte de luz
Equação 14.20
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
Computação Gráfica - Unisinos – GT-JEDi – Prof. Christian Hofsetz
17
Computação Gráfica - Unisinos – GT-JEDi – Prof. Christian Hofsetz
18
3
Iluminação e Sombreamento
Iluminação e Sombreamento
Modelos de Sombreamento para
Polígonos
Flat Shading
• Idéia Central: Poderíamos “sombrear” qualquer
superfície calculando a normal em cada ponto
visível e aplicando o modelo de iluminação naquele
ponto
• Porém esta operação teria um custo computacional
extremamente elevado
• Modelos de Sombreamento (Shading Models)
surgiram para executar esta tarefa de maneira
eficiente
• Aplica o modelo de iluminação uma única vez para
cada polígono, gerando uma intensidade que é
usada para sombrear o 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
• Não representa variações ao longo do polígono
Computação Gráfica - Unisinos – GT-JEDi – Prof. Christian Hofsetz
19
Iluminação e Sombreamento
Computação Gráfica - Unisinos – GT-JEDi – Prof. Christian Hofsetz
20
Iluminação e Sombreamento
Interpolated Shading
Sombreamento de Malhas Poligonais
• 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
• 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
Computação Gráfica - Unisinos – GT-JEDi – Prof. Christian Hofsetz
21
Iluminação e Sombreamento
Computação Gráfica - Unisinos – GT-JEDi – Prof. Christian Hofsetz
22
Iluminação e Sombreamento
Sombreamento de Malhas Poligonais
Sombreamento de Malhas Poligonais
• 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
Computação Gráfica - Unisinos – GT-JEDi – Prof. Christian Hofsetz
23
Computação Gráfica - Unisinos – GT-JEDi – Prof. Christian Hofsetz
24
4
Iluminação e Sombreamento
Iluminação e Sombreamento
Gouraud Shading
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
Computação Gráfica - Unisinos – GT-JEDi – Prof. Christian Hofsetz
25
Iluminação e Sombreamento
• 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
Computação Gráfica - Unisinos – GT-JEDi – Prof. Christian Hofsetz
26
Iluminação e Sombreamento
Gouraud Shading
Gouraud Shading
• Próximo Passo:
– Calcular a intensidade no vértice, aplicando um modelo de
iluminação.
– Após isso, calcular a interpolação destas intensidades
Computação Gráfica - Unisinos – GT-JEDi – Prof. Christian Hofsetz
27
Iluminação e Sombreamento
Computação Gráfica - Unisinos – GT-JEDi – Prof. Christian Hofsetz
28
Iluminação e Sombreamento
Phong Shading
Phong Shading
• Também conhecido como interpolação do vetor
normal
• Interpola a normal da superfície, ao invés da
intensidade
• Normais obtidas a partir das normais dos vértices
• Processo:
– Encontra a normal para o ponto dado
– Calcula-se a intensidade com aquela normal
Computação Gráfica - Unisinos – GT-JEDi – Prof. Christian Hofsetz
29
Computação Gráfica - Unisinos – GT-JEDi – Prof. Christian Hofsetz
30
5
Iluminação e Sombreamento
Iluminação e Sombreamento
Problemas com Abordagens
Baseadas em Interpolação
Gouraud / Phong
• Resultados obtidos com Phong shading são mais
realistas
• Gouraud pode apresentar problemas,
principalmente com componente especular.
Porque?
Computação Gráfica - Unisinos – GT-JEDi – Prof. Christian Hofsetz
•
•
•
•
31
Iluminação e Sombreamento
Silhueta Poligonal
Dependência de Orientação
Problemas com Vértices Compartilhados
Normais nos Vértices não representativos
Computação Gráfica - Unisinos – GT-JEDi – Prof. Christian Hofsetz
32
Iluminação e Sombreamento
Como OpenGL implementa isto?
Sugestões de Leitura/Consulta
• Capítulo 14
Computação Gráfica - Unisinos – GT-JEDi – Prof. Christian Hofsetz
33
Computação Gráfica - Unisinos – GT-JEDi – Prof. Christian Hofsetz
34
6