Cap. 7 Coloração (Shading) e Iluminação Global



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

Modelos de Iluminação Locais

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

Rendering. Por Angelo Luz

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

Modelos de Iluminação e Reflexão

1º Teste Computação Gráfica

Preenchimento de Áreas e de Polígonos. Antonio L. Bajuelos Departamento de Matemática Universidade de Aveiro

2º Exame Computação Gráfica

Iluminando o Cenário

Modelos de Iluminação

Luz e Visão. Capítulo 8 8º ano - CSA

Modelos de Iluminação

Computação Gráfica - 13

O Problema da Projecção. Antonio L. Bajuelos Departamento de Matemática Universidade de Aveiro

INSTITUTO TECNOLÓGICO

Desenhando perspectiva isométrica

Morfologia Matemática Binária

Estes sensores são constituídos por um reservatório, onde num dos lados está localizada uma fonte de raios gama (emissor) e do lado oposto um

ICORLI INSTALAÇÃO, CONFIGURAÇÃO E OPERAÇÃO EM REDES LOCAIS E INTERNET

Processo de Bolonha. Regime de transição na FCTUC

Computação Gráfica 3D Studio Max Prof.: Luiz Gonzaga Damasceno

Os Segredos da Produtividade. por Pedro Conceição

Antenas e Propagação. Artur Andrade Moura. amoura@fe.up.pt

Prova Escrita de Matemática A

3ds Max e V-Ray Global Illumination, Image Sampler e Caustics

4.1. UML Diagramas de casos de uso

Programação em papel quadriculado

Modelação 3D. Sumário COMPUTAÇÃO GRÁFICA E INTERFACES. Introdução. Introdução. Carlos Carreto

Classificação da imagem (ou reconhecimento de padrões): objectivos Métodos de reconhecimento de padrões

Apontamentos de Computação Gráfica

Notas de Cálculo Numérico

A EVOLUÇÃO DOS PRODUTOS NA INDÚSTRIA TRANSFORMADORA

ESTEREOSCOPIA INTRODUÇÃO. Conversão de um par de imagens (a)-(b) em um mapa de profundidade (c)

Trabalho Computacional

Introdução. Uso do disco Vantagens Desvantagens Baixo custo, facilidade de manutenção do software e do hardware, simetria e flexibilidade

Gráficos de funções em calculadoras e com lápis e papel (*)

CAPÍTULO 2. Grafos e Redes

Engenharia de Software

Transitores de tempo em domínio de tempo

PERSPECTIVA LINEAR DEFINIÇÕES E TEOREMAS

O que é coleta de dados?

Síntese de Imagens Fisicamente Correctas: Aplicações e Desafios

Processamento digital de imagens. introdução

Capítulo 6 Transformação de tensões e critérios de falhas

Modelos de Iluminação Métodos de surface-rendering

STC5 Redes de informação e comunicação

Topologia de rede Ligação Ponto-a-Ponto

AutoCAD D Modelagem

Topografia TRABALHOS DE CAMPO NIVELAMENTO GEOMETRICO LEVANTAMENTO TAQUEOMETRICO LEVANTAMENTO E CALCULO DE UMA POLIGONAL

MATEMÁTICA GEOMETRIA ANALÍTICA I PROF. Diomedes. E2) Sabendo que a distância entre os pontos A e B é igual a 6, calcule a abscissa m do ponto B.

Fichas de sistemas de partículas

1. Criar uma nova apresentação

Cálculo em Computadores trajectórias 1. Trajectórias Planas. 1 Trajectórias. 4.3 exercícios Coordenadas polares 5

Considerações sobre redimensionamento de motores elétricos de indução

Truques e Dicas. = 7 30 Para multiplicar fracções basta multiplicar os numeradores e os denominadores: 2 30 = 12 5

Oficina Ensinando Geometria com Auxílio do Software GEOGEBRA. Professor Responsável: Ivan José Coser Tutora: Rafaela Seabra Cardoso Leal

1 Introdução simulação numérica termoacumulação

Automatismos Industriais

Motivação: Empresarial e Escolar

Métodos de mapeamento para fenômenos qualitativos e quantitativos

Astra LX Frases Codificadas Guia para o processo de Configuração de Frases Codificadas no Programa AstraLX.

Tecnologias IXUS 210. Ecrã Táctil LCD PureColor II

1 Esfera de aço 1 Transitor BC547

Expansão de Imagem #2

1 Propagação de Onda Livre ao Longo de um Guia de Ondas Estreito.

Sistemas de Telecomunicações I

Caderno de Exercícios

4. Tangentes e normais; orientabilidade

3.2. Experimentações: o processo de produção Iluminação de três pontos

Transformador Trifásico [de isolamento]

Problema. Conversão Matricial. Octantes do Sistema de Coordenadas Euclidiano. Sistema de Coordenadas do Dispositivo. Maria Cristina F.

Trabalho prático: O contador de Geiger-Muller. Descrição geral

1 - No painel Create, sub-painel Systems, Ative o botão Sunlight.

BREVE HISTÓRIA DA LINGUAGEM FORTRAN

UNIVERSIDADE FEDERAL DE SANTA MARIA CENTRO DE TECNOLOGIA AULA 14 PROFª BRUNO CALEGARO

Faculdade de Computação

Como construir um Portfólio Reflexivo de Aprendizagens?

Índice Geral Índice Geral Pág.Pág.

Copyright de todos artigos, textos, desenhos e lições. A reprodução parcial ou total deste ebook só é permitida através de autorização por escrito de

A LINGUAGEM DA LUZ Fotografia

António Costa. Paulo Roma Cavalcanti

COMPUTAÇÃO GRÁFICA. Rasterização e Preenchimento de Regiões. MARCO ANTONIO GARCIA DE CARVALHO Fevereiro de Computação Gráfica

Ao se falar sobre fotografia cinematográfica estão envolvidos diversos elementos que devem ser levados em consideração:

REPLICACÃO DE BASE DE DADOS

Um jogo de preencher casas

Profa. Dra. Soraia Raupp Musse Thanks to Prof. Dr. Cláudio Rosito Jung

UMC Cotas em desenho técnico (Módulo 2) Componentes gráficos de uma cota: Linha de cota Linha de chamada Setas de cota

O Planejamento Participativo

Equações Diferenciais Ordinárias

Optimização de um Mundo Virtual

2 Estudo dos Acoplamentos

Controlo de servomotores com o microcontrolador BX-24

Como funcionam os elevadores hidráulicos

1. Arquivos Seqüenciais

- 1 - RESUMO SISTEMA DE MEDIÇÃO DE CONSUMOS DE LINHA DA CANELA EM TEMPO REAL

REDES DE COMPUTADORES

Capítulo 5. Figura 5.2. Conector para o monitor.

ESPAÇOS MUNIDOS DE PRODUTO INTERNO

Transcrição:

Cap. 7 Coloração (Shading) e Iluminação Global Engenharia Informática (5385) - 2º ano, 2º semestre

Revisão sobre Modelos de Iluminação Dependentes da Luz Modelos dependentes da luz Ambiente Normais à superfície não são importantes Lambert/Difusa Ângulo entre a normal à superfície e o vector director da fonte de luz Phong/Especular Normal à superfície, fonte de luz e, ainda, ponto de vista (observador)

Aplicação da Iluminação Temos agora um modelo de iluminação directa para um simples ponto na superfície Assumindo que a nossa superfície é definida como uma malha de faces poligonais, que pontos devemos nós usar? Computar estes modelos para todos os pontos é dispendioso As normais podem não estar explicitamente definidas para todos os pontos Há que ter em conta que: A iluminação envolve um processo de cálculo bastante pesado se for aplicado a todos os pontos da superfície dum objecto Há várias soluções possíveis, cada uma das quais tem implicações diferentes na qualidade visual da cena

Modelos de Coloração Várias opções: Coloração constante (flat shading) Coloração de Gouraud (interpolação) Coloração de Phong (interpolação) Novo hardware gráfico faz coloração programável por pixel (per-pixel programmable shading)!

Coloração Constante É o método mais simples, pois calcula a iluminação num só ponto de cada polígono. OpenGL usa um dos vértices do polígono A intensidade de iluminação (cor) é a mesma para todos os pontos de cada polígono. Vantagens: Rápido - um valor de cor calculado por polígono Desvantagens: Impreciso Descontinuidades nas fronteiras dos polígonos

A coloração constante será realística para objectos facetados? NÃO! Para fontes de luz pontuais, a direcção à fonte de luz varia para cada ponto da faceta. No caso da reflexão especular, a direcção ao observador varia para cada ponto da faceta.

Como tornar a coloração mais suave? Pode refinar-se um pouco este tipo de coloração através do cálculo da iluminação de Phong em cada pixel de cada polígono, mas o resultado continua a ser claramente facetado. Para obter superfícies visualmente suaves, há que usar vectores normais nos vértices dos polígonos normalmente diferentes das normais às faces são usados somente para efeitos de coloração Faz pensar numa melhor aproximação à superfície real que os polígonos aproximam As normais aos vértices podem ser fornecidas com o modelo aproximadas pela média das normais às facetas que partilham cada vértice

Coloração de Gouraud Ilumina or colora directamente cada vértice pela utilização da sua posição e da sua normal. Faz interpolação linear das cores sobre as faces: c primeiro, ao longo das arestas de fronteira; depois 1 + t 1 (c 2 -c 1 ) + ao longo das scanlines dentro do seu interior. t 3 (c 1 + t 2 (c 3 -c 1 )- c 1 + t 1 (c 2 -c 1 )) Vantagens: Rapidez - cálculos incrementais aquando da c rasterização c 1 1 + t 1 (c 2 -c 1 ) Maior suavidade de cor- usa 1 normal por vértice c 1 + t 2 (c 3 -c 1 ) partilhado de forma a obter continuidade de cor entre faces Desvantagens: c Ainda impreciso. Polígonos parecem bacentos e 3 pouco brilhantes. Tende a eliminar a componente especular. Se esta for incluída, será ponderada sobre todo o polígono. Mach banding. c 2 can t shade that effect!

Coloração de Gouraud: Mach banding http://www.markschenk.com/various/machband.html Artificial nas descontinuidades da intensidade da luz. O efeito de Mach banding descreve como a mente humana aumenta o contraste subconscientemente entre duas superfícies com luminâncias diferentes. A diferença entre duas cores é mais pronunciada quando elas estão lado-a-lado e a fronteira é suave. Isto realça as fronteiras entre cores, mesmo se a diferença de cor é pequena. Fronteiras grosseiras são ponderadas pelo nosso sistema de visão por forma a fornecer uma variação suave. flat shading Gouraud shading banded along edges floor appears banded

Coloração em OpenGL A OpenGL define dois modelos de coloração: Controlam como as cores são atribuídas aos pixels Coloração constante: usa uma cor constante em todo o polígono glshademodel(gl_flat) Coloração de Gouraud: interpola as cores entre os vértices (coloração por defeito) glshademodel(gl_smooth)

Coloração de Phong Coloração de Phong não é o mesmo que iluminação de Phong, embora sejam conceitos às vezes confundidos um com o outro Iluminação de Phong: o modelo empírico que discutimos no capítulo anterior para calcular a iluminação num ponto da superfície dum objecto. Coloração de Phong: interpola linearmente as normais em toda e qualquer faceta, aplicando o modelo de iluminação de Phong em cada pixel Vantagens: Obtém-se resultados visualmente muito suaves Elevada qualidade, especularidades estreitas Desvantagens: Mas é bastante mais dispendioso nos cálculos Continua a ser uma aproximação para a maior parte das superfícies

Coloração de Phong N 1 Interpola linearmente as normais aos vértices Calcula as equações de iluminação em cada pixel Pode usar a componente especular Note-se que as normais são usadas para computar as componentes difusa e especular N 4 N 2 N 3 Discontinuidade na taxa de variação das normais é mais difícil de detectar I total = K A I A + # lights I i (K D N Li i=1 ( ) + K ( S V Ri ) n )

Problemas na Coloração Silhuetas poligonais continuam presentes Distorção em perspectiva Interpolação dependente da orientação dos pológonos Problemas nos vértices partilhados Má média nos vértices

Problemas na Coloração (1) Presença de silhuetas poligonais Gouraud Phong

Problemas na Coloração (2) Distorção em perspectiva Note-se que a interpolação linear no espaço de ecrã não está alinhada com a interpolação linear no espaço do domínio da cena. Particionam-se polígonos grandes em polígonos mais pequenos para reduzir a distorção. image plane Z into the scene

Problemas na Coloração (3) Interpolação dependente da orientação dos polígonos A B D Roda -90 o e colora o mesmo ponto C B A C D Interpola entre AB e AD Interpola entre CD e AD

Problemas na Coloração (4) Problemas nos vértices partilhados Exemplo ao lado: O vértice B é partilhado por dois rectângulos à direita, mas não por aquele à esquerda O primeiro segmento da scanline é interpolada entre DE e AC O segundo segmento da scanline é interpolada entre BC e GH Uma discontinuidade pode surgir D E A C B H G F

Problemas na Coloração (5) Má média nos vértices

Modelos de Coloração (por Iluminação Directa) Sumário: Coloração Constante Computa-se a iluminação de Phong uma só vez para cada polígono Coloração de Gouraud Computa-se a iluminação de Phong nos vértices e interpola os valores de iluminação sobre o polígono Coloração de Phong Computa-se as médias das normais das faces nos vértices Interpola-se as normais sobre a face e faz-se a iluminação de Phong sobre ela

Geração Actual de Coloradores O hardware actual permite-nos ir para além do modelo de iluminação estandardizado. Os Coloradores de Vértices Programáveis permitem-nos escrever um pequeno programa que determina como é que a cor dum vértice é calculada O nosso programa tem acesso à normal e à posição da superfície, assim como algo mais que lhe queiramos fornecer (como a luz) Podemos adicionar, subtrair, calcular produtos internos, etc

Geração Actual de Coloradores (1) Só abordámos superficialmente a iluminação de superfícies O modelo comum é claramente inadequado para iluminação precisa, mas tem a vantagem de ser rápido e simples Tem em conta dois sub-problemas de iluminação Para onde vai a luz? Transporte de Luz O que acontece nas superfícies? Modelos de Reflexão Outros algoritmos endereçam o transporte ou a reflexão, ou ambos A abordar talvez no mestrado

Sobrevisão: modelos baseados na iluminação Iluminação Directa ou Local Tipos de Luz Fontes de Luz (emissão) Materiais da superfície dos objectos (reflexão) Iluminação Indirecta ou Global Sombras Refracções Reflexões entre objectos Global Illumination

Iluminação Global Temos visto duma forma aproximada como é que a luz funciona E assim continuaremos Mas daremos agora um passo mais para a frente Iluminação global A noção de que um ponto é iluminado por mais luz do que aquela que vem das fontes de luz locais; a iluminação é feita por todos os emissores e reflectores na cena

Sombras (shadows) Os termos relativos a sombras dizem-nos que fontes de luz estão obstruídas Emite-se raios visuais em direcção a cada fonte de luz L i S i = 0 se o raio é obstruído, S i = 1 no caso contrário # lights i=1 I = I E + K A I A + [K D N L Shadow Term ( ) + K ( S V R ) n ]S i I i

Emissão de Raios Visuais (Ray Casting) Traçar raios primários a partir da câmara Iluminação directa a partir de luzes não obstruídas somente # lights i=1 I = I E + K A I A + [K D N L ( ) + K ( S V R ) n ]S i I i

Traçagem Recursiva de Raios (Recursive Ray Tracing) Também traça raios secundários a partir das superfícies atingidas Iluminação global a partir de reflexão simétrica e transparência # lights i=1 I = I E + K A I A + [K D N L ( ) + K ( S V R ) n ]S i I i + K S I R + K T I T

Traçagem Recursiva de Raios: sobrevisão Raios primários. Emissão dum raio a partir do olho do observador através de cada pixel, e depois a partir do objecto intersectado para as fontes de luz de forma determinar as condições de sombreamento/iluminação Raios secundários. Ray tracing também gera raios secundários Raios de reflexão e raios de refracção Usa normais à superfície como guia (ângulo de incidência é igual ao ângulo de reflexão) Se outro objecto é atingido, determina-se a luz que ele ilumina recursivamente por ray tracing A recursão pára quando: Raio falha a intersecção com um objecto A profundidade máxima especificada pelo utilizador é atingida A máquina fica sem memória disponível

Reflexão simétrica (mirror reflection) Traça raio secundário na direcção da reflexão simétrica (mirror reflection) Calcula a radiância ao longo do raio secundário, incluindo-a no modelo de iluminação Radiance for mirror reflection ray # lights i=1 I = I E + K A I A + [K D N L ( ) + K ( S V R ) n ]S i I i + K S I R + K T I T

Transparência Traça raio secundário na direcção da refracção Calcula a radiância ao longo do raio secundário, incluindo-a no modelo de iluminação Radiance for refraction ray # lights i=1 I = I E + K A I A + [K D N L ( ) + K ( S V R ) n ]S i I i + K S I R + K T I T

Transparência O coeficiente de transparência é a fracção que é transmitida K T = 1 se objecto é translucente, K T = 0 se objecto é opaco 0 < K T < 1 se objecto é semi-translucente Transparency Coefficient # lights i=1 I = I E + K A I A + [K D N L ( ) + K ( S V R ) n ]S i I i + K S I R + K T I T

Transparência Refractiva Para superfícies finas, podemos ignorar a mudança de direcção Assume-se que a luz viaja em linha recta através da superfície T L

Transparência Refractiva Para objectos sólidos, aplica-se a Lei de Snell: η r sin Θ r = η i sin Θ i T = ( η i η r cos Θ i cos Θ r ) N η i η r L

Radiosidade Ray tracing modela a reflexão especular e transparência refractiva, mas ainda usa uma componente ambiente nos efeitos de luz Radiosidade é a taxa à qual a energia é emitida ou reflectida pela superfície Pela conservação da energia da luz num volume, estes efeitos de radiosidade podem ser traçados

Sumário Sombreamento baseado na Iluminação Directa Emissão de Raios (Ray casting) - Usualmente usa-se aproximações analíticas simples para a emissão das fontes de luz e para a reflexão nas superfícies Sombreamento baseado na Iluminação Indirecta Traçagem recursiva de raios (Recursive ray tracing) - Incorpora sombras, reflexões simétricas e refracções Radiosidade - Usa lei da conservação de energia FIM