O que é? Como funciona?

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

POV-Ray. André Tavares da Silva.

Terceiro Trabalho Ray Tracing

Características Principais. Introdução à Computação Gráfica Ray Tracing. Ray Casting. Contexto Histórico. Claudio Esperança Paulo Roma Cavalcanti

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

4 Iluminando uma cena

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

Fundamentos da Computação Gráfica

Óptica. Aula 6 - Lentes e Instrumentos Ópticos.

8. Cores e texturas. Acabamentos

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

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

1º Teste Computação Gráfica

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

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

5 Integrando objetos sintéticos à cena real

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

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

Exercícios propostos Menu Resumo do capítulo. Testes propostos. Reflexão da luz. Espelhos planos

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

Jorge Gustavo Bandeira dos Santos. Unidade: 3 de março de 2013

REFLEXÃO DA LUZ. i = r. PRIMEIRA LEI DA REFLEXÃO RI, N e RR são coplanares (pertencem ao mesmo plano). SEGUNDA LEI DA REFLEXÃO

Física IV. Sexta lista de exercícios

Propagação Radioelétrica 2017/II Profa. Cristina

Ray Tracing (Traçado de Raios)

FÍSICA - A ª SÉRIE P2

Física IV. Prática IV Clemencia Mora Herrera. Baseado nos slides do Prof. Sandro Fonseca

c= m/s Aula 9 Ótica Por Leonardo Alfonso Schmitt.

ESPELHOS E LENTES ESPELHOS PLANOS

FÍSICA MÓDULO 13. Conceitos e Princípios Fundamentais da Óptica Geométrica. Professor Sérgio Gouveia

Computação Gráfica II

FENÔMENOS LUMINOSOS PARTE 1. CONTEÚDOS Propagação retilínea da luz Reflexão da luz Refração da luz

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

ONDAS ELETROMAGNÉTICAS:3 CAPÍTULO 33 HALLIDAY, RESNICK. 8ª EDIÇÃO. Revisão: Campos se criam mutuamente. Prof. André L. C.

Unidade 1 SOM E LUZ. Ciências Físico-químicas - 8º ano de escolaridade. Reflexão da Luz e Espelhos. Objetivos. Unidade 1 Som e Luz

Raios de luz: se propagam apenas em uma. direção e em um sentido

BANCO DE QUESTÕES - FÍSICA - 1ª SÉRIE - ENSINO MÉDIO ==============================================================================================

LUZ. Forma de energia radiante que se propaga por meio de ondas eletromagnéticas. A velocidade da luz no vácuo é de cerca de km/s.

REFLEXÃO E REFRAÇÃO DA LUZ

Determinação de Superfícies Visíveis

Introdução à Computação Gráfica Aliasing e Ray Tracing Distribuído. Claudio Esperança Paulo Roma Cavalcanti

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

Ray Tracing / Ray Casting

Apresentação e Aplicações de Óptica Geométrica (ENEM/UERJ)

Física. Óptica. Professor Alexei Muller.

Interferência de ondas: está relacionada com a diferença de fase entre as ondas. A diferença de fase entre duas ondas pode mudar!!!!

Tópicos Especiais em Engenharia de Software (Jogos II)

1º trimestre Exercícios - Física Data:03/16 Ensino Médio 3º ano classe: Prof.Dora Nome: nº

Física IV. Prática IV e V Clemencia Mora Herrera. baseada nos slides do Prof. Sandro Fonseca

Tutorial Pov-Ray. Tutorial Pov-Ray. Glaucia Gabriel Sass. Glaucia Gabriel Sass. Programa de Pós-Graduação em Ciências Cartográficas

Modelos de Iluminação

PRINCÍPIOS DA ÓPTICA. Professor Paulo Christakis, M.Sc. 10/10/2016 1

Pipeline de Visualização 3D

Apostila de Física 33 Introdução à Óptica Geométrica

O raio incidente, o raio refletido e a reta perpendicular à superfície, no ponto de incidência, estão contidos no mesmo plano.

PROFESSORA: Bárbara. c) a difração. d) o arco-íris.

Prof.: Raphael Carvalho

Óptica IME 2016 Prova 1 com correções e resolução

Processo Avaliativo LISTA EXTRA 1-1º Bimestre/2017 Disciplina: Física B 1ª série EM A/B Data: 10/02/2017. Nome do aluno Nº Turma

Conceitos Básicos de Óptica Geométrica

EXERCÍCIOS SOBRE REFRAÇÃO

3 - Na figura a seguir, está esquematizado um aparato experimental que é utilizado. 1 - Dois raios de luz, um vermelho (v) e outro

Cap 23 - Ótica Geométrica

1-A figura 1 a seguir mostra um feixe de luz incidindo sobre uma parede de vidro que separa o ar da água.

Iluminação e Sombreamento

Feixe de luz: É um conjunto de infinitos raios de luz; um feixe luminoso pode

Esta figura ilustra o fenômeno óptico da

Computação Gráfica. Prof. MSc. André Yoshimi Kusumoto

Unidade Senador Canedo Professor (a): Dhanyella Aluno (a): Série:3ª Data: / / LISTA DE FÍSICA I

4 Implementação do Gerador de arquivos VRML - VRMLGer

Dependência. Disciplina Física 2ª série. Cronograma Armando Horta Dumont

Transcrição:

A ideia deste trabalho é explicar como funciona a técnica de traçado de raios (raytracing), falando sobre os tipos de estratégias que podem ser tomadas, bem como iluminação, sombra e visibilidade. Será explicado também um pouco sobre implementação e, no final, será dado um exemplo de utilização da técnica. O que é? Traçado de raios é um tipo de algoritmo de iluminação global. Ele é bastante útil, uma vez que os modelos de iluminação global estão relacionados ao realismo das cenas geradas sinteticamente. Como funciona? A ideia geral do algoritmo citado é traçar raios na cena e, para cada objeto interceptado pelo mesmo, deverá ser calculada a interseção e, para cada ponto interceptado do objeto, deverão ser gerados dois raios, um refletido e outro refratado, de acordo com a propriedade do material. Lembrando que só interessa o primeiro objeto interceptado pelo raio. A técnica de traçado de raios possui duas estratégias: forward e backward. Em forward, são analisados todos os raios que saem da fonte de luz e calculam-se todas as interseções desses raios com os objetos da cena. Não é vantajoso utilizar esta estratégia, pois são muitos os raios que são emitidos por uma fonte de luz e nem todos chegam ao observador, neste caso, seriam calculadas interseções desnecessárias. Já na estratégia backward, o caminho inverso é percorrido, ou seja, em vez do raio ser traçado a partir da fonte de luz e chegar ao observador, ele é traçado a partir do observador, passando pelo objeto e chegando até o ponto de luz. Isto faz sentido, pois se um objeto está sendo visto pelo observador, é sinal de que foram incididos raios de luz sobre ele. Figura 1

Na Figura 1, podemos observar interações dos raios de luz. É emitido um raio a partir do observador que intercepta uma superfície transparente (3), gerando, assim dois novos raios R 1 (raio refletido) e T 1 (raio refratado). Da superfície 3 é lançado um novo raio S 2 (raio de sombra será explicado mais adiante). A cada ponto (P) de um objeto interceptado pelo raio, os mesmos cálculos são realizados. Esta recursão pode ser visualizada através de uma árvore e pode terminar de acordo com um dos seguintes critérios: quando o raio interceptar uma superfície difusa, quando atingir uma determinada profundidade ou quando a energia do raio ficar abaixo de um certo limiar estabelecido anteriormente. Iluminação Para compor uma imagem na tela, é preciso que seja determinado a cor de cada pixel. Pensando no raio de luz como um caminho reto traçado que é percorrido por partículas de luz (fótons), a cor percebida pelo olho está totalmente relacionada com a energia dos fótons. Além dos raios emitidos e refratados que são gerados quando um raio atinge um ponto P de um objeto, também é realizado um cálculo de um modelo de reflexão local. Este cálculo é necessário, uma vez que há uma iluminação direta tingindo o ponto. Figura 2 Exemplo de traçado de raios exemplificando os raios emitidos e refratados Temos que I(P) = I local (P) + I global (P) = I local (P) + k rg (P r ) + k tg (P t ) Onde: P é o ponto atingido, I(P) é a iluminação total no ponto, P r é o raio refletido no ponto P, P t é o raio refratado no ponto P, k rg é o coeficiente de reflexão global e k tg é o coeficiente de transmissão global. Sombra A fim de que seja determinada a iluminação no ponto P, vemos se algum raio de luz percorre até o ponto P. Para tal verificação, é lançado um raio de iluminação em

direção à fonte de luz, se o raio chegar à mesma, a fonte está iluminando aquela superfície e, caso contrário, significa que algum objeto está bloqueando o raio e, neste caso, haverá geração de sombra. Figura 3 Exemplos de cena com sombra Visibilidade Como nem todos os objetos que são interceptados pelos raios estão no raio de visão do observador, os cálculos de intercessão não serão calculados para todos os objetos. Este teste de visibilidade é feito da seguinte forma: para cada raio, verifica-se se ele intercepta algum objeto e, ao final, é feita uma lista de objetos interceptados por raios e os cálculos da intercessão só são realizados nos objetos que estão no raio de visão do observador. Cálculos e interseções Como já foi dito anteriormente, quando um raio incide sobre um objeto ou superfície podem ser gerados dois raios (refletido e refratado) de acordo com as propriedades do material atingido. Figura 4 Reflexão e refração na interação de um raio com uma superfície

Na figura 4, podemos observar que os raios incidente (L) e refletido (R) fazem o mesmo ângulo com a normal (n) à superfície. Logo, θ i = θ r e: R = 2(L.n)n L E, como o sentido de L é da superfície para o observador, L = -R d Onde R d = P (coordenadas ponto atingido) O (coordenadas do observador) Snell: E, por fim, a direção do raio refratado pode ser calculada a partir da lei de ( ), onde η é o índice de refração entre os meios e ( ) )) planos. As interseções podem ocorrer com vários tipos de objetos, inclusive esferas e Efeitos Vários efeitos podem ser alcançados ao se utilizar a técnica de traçado de raios. São eles: Gloss (efeito espelho) pode ser alcançado gerando-se raios em direções próximas à ideal e combinando-se os resultados, translucidez (transparência) pode ser alcançado traçando-se raios em direções próximas ao do raio refratado ideal e combinando-se os resultados, penumbra (fonte de luz parcialmente oclusa) pode ser obtido traçando-se raios em direções aproximadas ao de sombra principal, profundidade de campo pode ser obtido utilizando técnicas estocásticas ao distribuir-se os pontos de origem dos raios que passam por um pixel como se estivessem sobre uma lente finita e combinando-se os raios resultantes e desfoque de movimentos. Figura 5 Efeito Gloss

Figura 6 Efeito translucidez Implementação Será feita inicialmente uma implementação utilizando o programa Pov Ray. Ele cria cenas foto realistas usando o traçado de raio a partir de um arquivo texto que contém informações sobre os objetos e iluminação na cena. Uma imagem é gerada a partir do campo de visão da câmera especificado no arquivo texto. Inicialmente, é necessário adicionar um arquivo padrão, no nosso caso incluiremos somente a declaração que inclui as cores: #include "colors.inc" A declaração da câmera descreve sua posição e como a câmera irá ver a cena. As três coordenadas indicam a sua posição e para onde a câmera estará apontada. camera { location <0, 0, -2> look_at <0, 0, 0> right 2*x up 1.5*y Em seguida, colocamos as informações do plano: posição e cores: plane { // the floor <0.5, 1, 0>, -3 // along the x-z plane (y is the normal vector) pattern pigment { checker color <0.5451,0.3529,0>, color <0.9333,0.6039,0>, scale.3 // checkered E agora são colocadas as informações sobre as esferas da cena. É definida a posição do centro de cada uma (as três primeiras coordenadas), valor do raio (valor após

as coordenadas do centro), cor <color (R,G,B)> e informações sobre a reflexão e iluminação do material: sphere { <-2, 0, 4>, 1 pigment { color <0, 1, 0> finish { reflection 0.3 phong 0.9 phong_size 40 sphere { <1, 0, 4>,.5 pigment { color <0, 0, 1> finish { reflection 0.05 phong 0.05 phong_size 2 E, por fim, adicionamos as informações da fonte de luz da cena coordenadas e cor (R, G, B): light_source { <10, 10, 4> color <0.960784,1,0.980392> Figura 8 Imagem gerada pelo Pov Ray com o código acima

Implementação em OpenGL Em anexo, há um programa com a implementação do traçado de raios em OpenGL. A diferença ao utilizarmos o OpenGL é que todos os cálculos precisam ser feitos, inclusive os de interseção. Figura 9 Imagem gerada pelo programa em OpenGL (em anexo)