POVRay Introduo Multimdia Equipe Augusto Cesar N L

  • Slides: 26
Download presentation
POV-Ray Introdução à Multimídia

POV-Ray Introdução à Multimídia

Equipe • Augusto Cesar N L Filho – acnlf • Thiago de Moraes Brayner

Equipe • Augusto Cesar N L Filho – acnlf • Thiago de Moraes Brayner – tmb • Rafael Menelau Oliveira e Cruz – rmoc

Roteiro • • O que é POV-Ray? Características Ray Tracing Exemplos Prática Páginas Exercícios

Roteiro • • O que é POV-Ray? Características Ray Tracing Exemplos Prática Páginas Exercícios

O que é POV-Ray? • POV-Ray (Persistence of Vision Raytracer) • Ferramenta para renderização

O que é POV-Ray? • POV-Ray (Persistence of Vision Raytracer) • Ferramenta para renderização de imagens 3 D de alta definição • Atualmente na versão 3. 6 • Ray Tracing

Características(1/2) • Multi-Plataforma • Linguagem de descrição de cena (SDL) • Suporte à primitivas

Características(1/2) • Multi-Plataforma • Linguagem de descrição de cena (SDL) • Suporte à primitivas geométricas • Suporte à técnicas avançadas de modelagem

Características(2/2) • Vasta gama de bibliotecas – Objetos – Texturas • Suporte á vários

Características(2/2) • Vasta gama de bibliotecas – Objetos – Texturas • Suporte á vários tipos de fontes de iluminação • Cálculo de Reflexão e Refração • Simples e fácil de usar

Ray-Tracing(1/2) • Técnica para renderização de imagens 3 D • Uso da técnica de

Ray-Tracing(1/2) • Técnica para renderização de imagens 3 D • Uso da técnica de Ray Casting – Lança um raio para cada pixel da imagem • Simula a geometria óptica envolvida no trajeto de alguns raios de luz que viajam pela cena. • Utiliza recursão para enviar os raios refletidos e transmitidos.

Ray Tracing(2/3) • Fácil implementação • Alto realismo • Alto custo computacional – Complexidade

Ray Tracing(2/3) • Fácil implementação • Alto realismo • Alto custo computacional – Complexidade

Ray-Tracing(3/3)

Ray-Tracing(3/3)

Exemplos(1/3)

Exemplos(1/3)

Exemplos(2/3)

Exemplos(2/3)

Exemplos(3/3)

Exemplos(3/3)

Open. GL X POV-Ray Open. GL POV-Ray

Open. GL X POV-Ray Open. GL POV-Ray

Ambiente POV-Ray

Ambiente POV-Ray

Definindo da câmera #include "colors. inc“ //Leitura de definições de cores #include "stones. inc“

Definindo da câmera #include "colors. inc“ //Leitura de definições de cores #include "stones. inc“ //Definições de texturas de pedras camera { // Definindo a posição da câmera location <0, 2, -3> look_at <0, 1, 2> } //declarando um plano Plane{ <a, b, c>, d //vetor normal ao plano e distância à //origem }

Desenhando um objeto //desenhando uma esfera sphere { // Usando uma esfera <0, 2,

Desenhando um objeto //desenhando uma esfera sphere { // Usando uma esfera <0, 2, 3>, 3 // Posição e Raio texture { pigment { color Yellow //definindo a cor amarela } } //aqui podem ser feitas transformações } background { color rgb <0, 0, 1> } // Definindo a cor do fundo //outra forma de definir uma cor

Definindo fonte de luz light_source { <1, 3, -5> color White } Sem luz

Definindo fonte de luz light_source { <1, 3, -5> color White } Sem luz // Posição da fonte de luz // Cor da fonte de luz Com luz

Outras primitivas • • • torus box cone plane cylinder triangle

Outras primitivas • • • torus box cone plane cylinder triangle

Declarando um polígono polygon { 12, <-0. 8, 0. 0>, <-0. 8, 1. 0>,

Declarando um polígono polygon { 12, <-0. 8, 0. 0>, <-0. 8, 1. 0>, <-0. 3, 0. 5>, <-0. 7, 0. 0>, <-0. 8, 0. 0>, <-0. 7, 0. 6>, <-0. 7, 0. 9>, <-0. 4, 0. 6>, <-0. 7, 0. 6> pigment { color rgb <1, 0, 0> } } //Número de vértices do polígono //Desenhando a letra ‘P’

Transformações • rotate <x, y, z> – rotate eixo*n • translate <x, y, z>

Transformações • rotate <x, y, z> – rotate eixo*n • translate <x, y, z> – translate eixo*n • scale <x, y, z> – scale eixo*n

Texturas(1/3) //definindo uma texture { pigment { My. Pigment } //efeitos normal { My.

Texturas(1/3) //definindo uma texture { pigment { My. Pigment } //efeitos normal { My. Normal } finish { My. Finish } //declara o pigmento //declara efeitos bumps, ripples, waves //propriedades do objeto //transformações da textura scale <x, y, z> rotate <x, y, z> translate <x, y, z> }

Texturas(2/3) pigment { //declaração do pigmento checker color Red, color Blue //textura em xadrez

Texturas(2/3) pigment { //declaração do pigmento checker color Red, color Blue //textura em xadrez } normal { //declara os efeitos bumps 0. 4 //adicionando bump mapping scale 0. 2 //escala }

Texturas(3/3) //define as propriedades do objeto finish { diffuse 0. 4 // Coeficiente de

Texturas(3/3) //define as propriedades do objeto finish { diffuse 0. 4 // Coeficiente de reflexão difusa ambient 0. 2 // Coeficiente de reflexão da luz ambiente phong 1 // controla a quantidade de highlight phong_size 100 //tamanho do highlight reflection 0. 25 //Coeficiente de reflexão }

Páginas • Site oficial www. povray. org • Internet Ray Tracing Competition: www. irtc.

Páginas • Site oficial www. povray. org • Internet Ray Tracing Competition: www. irtc. org

Exercícios(1/2) • Teóricas: – 1. Cite algumas caracteristicas do POV-Ray – 2. Explique como

Exercícios(1/2) • Teóricas: – 1. Cite algumas caracteristicas do POV-Ray – 2. Explique como funciona o Ray Tracing

Exercicios(2/2) • Práticas: Para todas as questões envie o código e a figura com

Exercicios(2/2) • Práticas: Para todas as questões envie o código e a figura com o resultado. – 3. Desenhe uma cena contendo um plano como o chão(usar textura em xadrez) e uma esfera. Lembre-se de adicionar uma ou mais fontes de luz – 4. Adicione efeitos de bump, reflexão difusa, ambiente, highlight e reflexão. – 5. Modifique a escala da esfera – 6. Execute translação da esfera no eixo z