computa§£o grfica i crab – grupo de computa§£o grfica...

Download Computa§£o Grfica I CRAb – Grupo de Computa§£o Grfica Departamento de Computa§£o UFC

Post on 16-Apr-2015

108 views

Category:

Documents

1 download

Embed Size (px)

TRANSCRIPT

  • Slide 1
  • Computao Grfica I CRAb Grupo de Computao Grfica Departamento de Computao UFC
  • Slide 2
  • 2 Objetivos Estudar equipamentos, tcnicas de programao e conceitos matemticos Para representao, manipulao e projeo de objetos bi- e tridimensionais aplicar a problemas especficos
  • Slide 3
  • 3 Sumrio do Curso Sistemas Grficos e Modelos Programao Grfica Input e Interao Objetos Geomtricos e Transformaes Visualizao Pintura Tcnicas Discretas Implementao de um Renderizador
  • Slide 4
  • Pintura (Shading)
  • Slide 5
  • 5 6.1 Luz e Matria Superfcie pode ser Emissora de luz Superfcie de uma lmpada Refletora de luz Emissora e refletora de luz Ferro em brasa
  • Slide 6
  • 6 6.1 Luz e Matria Luz chegando a uma superfcie resultado de mltiplas interaes
  • Slide 7
  • 7 6.1 Luz e Matria Equao de renderizao i(p, p): intensidade sai de p chega a p (p,p): parte emitida diretamente por p i(p, p): intensidade de p chegando a p (p, p, p): funo de reflexo de p (p, p): funo de ocluso = 0 se objeto opaco estiver no caminho = 1/r 2 fator de atenuao da distncia
  • Slide 8
  • 8 6.1 Luz e Matria Classificao da interao luz/material Superfcies especulares Superfcies difusas Superfcies translcidas
  • Slide 9
  • 9 6.2 Fonte Luminosa (A25) 6.2.0 Introduo Funo de iluminao: I(x, y, z,,, ) x, y, z: posio da fonte (, ): direo de emisso : comprimento de onda emitido Contribuio total da fonte para iluminao da superfcie
  • Slide 10
  • 10 6.2 Fonte Luminosa (A25) Tipos de fontes Luz ambiente Luz pontual Luz spot Luz distante
  • Slide 11
  • 11 6.2 Fonte Luminosa (A25) 6.2.1 Fontes de cores Modelo do sistema visual humano Modelo tricromtico (R, G, B) Utilizar a funo de luminncia
  • Slide 12
  • 12 6.2 Fonte Luminosa (A25) 6.2.2 Luz ambiente Representa a iluminao uniforme do ambiente Cozinhas, salas de aula, dias nublados Utilizar a intensidade
  • Slide 13
  • 13 6.2 Fonte Luminosa 6.2.3 Fonte pontual Emite luz uniformemente em todas as direes Tem Intensidade e localizao
  • Slide 14
  • 14 6.2 Fonte Luminosa 6.2.3 Fonte pontual... Gera sombras duras Fonte de tamanho finito gera regies de penumbra e umbra
  • Slide 15
  • 15 6.2 Fonte Luminosa 6.2.3 Fonte pontual... Atenuar efeito de iluminao com a distncia Utilizar fator 1/(a + b*d + c*d 2 )
  • Slide 16
  • 16 6.2 Fonte Luminosa (A25) 6.2.4 Spotlights Uniforme: No h diferena de intensidade na rea iluminada Exceto pela distncia do ponto iluminado fonte (d1 e d2)
  • Slide 17
  • 17 6.2 Fonte Luminosa 6.2.4 Spotlights No-uniforme: Intensidade concentra na direo l e decai com o afastamento angular dessa direo I = (cos ) e = ( l. s) e l s
  • Slide 18
  • 18 6.2 Fonte Luminosa (A25) 6.2.5 Fontes luminosas distantes Importa apenas a direo de iluminao e intensidade de iluminao D
  • Slide 19
  • 19 6.3 O Modelo de Reflexo de Phong 6.3.0 Introduo Modelo simplificado Eficincia computacional Bom realismo sob Condies de iluminao variadas Materiais diferentes Usa 4 vetores unitrios n: normal superfcie l: do ponto iluminado fonte r: reflexo de l (Euclides) v: do ponto iluminado ao observador
  • Slide 20
  • 20 6.3 O Modelo de Reflexo de Phong Suporta os 3 tipos de interao luz/material Ambiente Difusa Especular Cada fonte i contm as 3 intensidades
  • Slide 21
  • 21 6.3 O Modelo de Reflexo de Phong As reflectividades do material j para cada um dos 3 tipos de interao Representam quanto de uma dada componente refletida
  • Slide 22
  • 22 6.3 O Modelo de Reflexo de Phong Considerando o operador matricial @ tal que C = A @ B C ij = A ij B ij (no h somatrio) I = I a + I d + I s = L a @R a + L d @R d + L s @R s
  • Slide 23
  • 23 6.3 O Modelo de Reflexo de Phong 6.3.1 Reflexo ambiente I a = R a L a = k a L a 0 k a 1 k a = (k ar, k ag, k ab ) k ar = 1.0 k ag = 0.0 k ab = 0.0 L ar = 1.0 L ag = 1.0 L ab = 1.0 I ar = 1.0 I ag = 0.0 I ab = 0.0
  • Slide 24
  • 24 6.3 O Modelo de Reflexo de Phong 6.3.2 Reflexo difusa Superfcies Lambertianas Superfcie rugosa
  • Slide 25
  • 25 6.3 O Modelo de Reflexo de Phong Lei de Lambert R d cos q0q0 q0q0 pp
  • Slide 26
  • 26 6.3 O Modelo de Reflexo de Phong 6.3.3 Reflexo especular Intensidade na direo do observador Decai quando cresce: I s = k s L s (cos ) m I s = k s L s (r v) m r v l
  • Slide 27
  • 27 6.3 O Modelo de Reflexo de Phong 6.3.4 Modelo completo = m
  • Slide 28
  • 28 6.4 Clculo dos Vetores 6.4.1 Vetores normais Dada a equao do plano
  • Slide 29
  • 29 6.4 Clculo dos Vetores Dados 3 pontos em um plano p0p0 p2p2 p1p1 n Observao: O vetor obtido precisa ser normalizado
  • Slide 30
  • 30 6.4 Clculo dos Vetores Dada a equao implcita da superfcie Observao: O vetor obtido pelo gradiente da funo precisa ser normalizado Esfera em (xc,yc,zc)
  • Slide 31
  • 31 6.4 Clculo dos Vetores Dada a equao paramtrica da superfcie Observao: O vetor n precisa ser normalizado
  • Slide 32
  • 32 6.4 Clculo dos Vetores Equao paramtrica da esfera de r=1 centrada na origem - /2 < u < /2 - < v < z y x u v p normalizado
  • Slide 33
  • 33 6.4 Clculo dos Vetores Especificao de um vetor normal em OpenGL GLfloat n[3]; glNormal3f(n[0], n[1], n[2]); // nx, ny, nz ou glNormal3fv(n); // ponteiro para of vetor n
  • Slide 34
  • 34 6.4 Clculo dos Vetores 6.4.2 ngulo de reflexo lr n (l. n) 2(l. n) 7 multiplicaes 5 adies
  • Slide 35
  • 35 6.4 Clculo dos Vetores 6.4.3 Uso do vetor h (Halfway) Usado em vez de r no clculo da reflexo especular 3 multiplicaes 5 adies 1 raiz quadrada 3 divises l n h r v
  • Slide 36
  • 36 6.4 Clculo dos Vetores 6.4.3 Uso do vetor h (Halfway) S vale a pena se a fonte estiver longe e o observador estiver longe h o mesmo para todo ponto do cenrio r no o mesmo para todo ponto do cenrio Se o observador estiver no mesmo plano que contm l e n: 2 = Utilizando nh em vez de rv com o mesmo expoente m produz um specular hilight menor Modificar o expoente m para m
  • Slide 37
  • 37 6.4 Clculo dos Vetores 6.4.4 Luz transmitida Lei de Snell Obter t como t = a (-l) + b (-n) t = a l b n ||t|| = 1 l n -n t l t a b Meio l Meio t
  • Slide 38
  • 38 6.4 Clculo dos Vetores
  • Slide 39
  • 39 6.5 Colorao de polgonos 6.5.0 Introduo Trs maneiras de atribuir cor ponto a ponto Flat shading Gouraud shading Phong shading Exemplo: Colorir a malha poligonal
  • Slide 40
  • 40 6.5 Colorao de polgonos 6.5.1 Colorao homognea:Flat Shading Modelo de Phong retorna mesma intensidade para qualquer ponto v=constante: observador no infinito l=constante: fonte de luz no infinito n=constante: polgono plano No OpenGL glShadeModel(GL_FLAT);
  • Slide 41
  • 41 6.5 Colorao de polgonos Inibio lateral Propriedade do sistema visual humano Percebe pequenas diferenas em intensidade luminosa Bordas fictcias so criadas: Mach bands
  • Slide 42
  • 42 6.5 Colorao de polgonos 6.5.2 Colorao por interpolao e de Gouraud Intensidade calculada pelo modelo de iluminao de Phong nos vrtices do polgono Depois de projetados os polgonos Pontos interiores so coloridos por interpolao das intensidades dos vrtices No OpenGL glShadeModel(GL_SMOOTH);
  • Slide 43
  • 43 6.5 Colorao de polgonos Clculo das normais em um vrtice da malha
  • Slide 44
  • 44 6.5 Colorao de polgonos 6.5.3 Colorao de Phong Normais so calculadas nos vrtices Polgono projetado Normais nos pontos interiores so interpoladas a partir das normais nos vrtices Intensidade calculada ponto a ponto com as normais interpoladas
  • Slide 45
  • 45 6.5 Colorao de polgonos Utilizar interpolao bilinear
  • Slide 46
  • 46 6.6 Aproximao de uma esfera por subdiviso recursiva Processo recursivo Construir tetraedro Quatro faces triangulares ligando 4 vrtices em uma superfcie esfrica Calcular ponto central de cada face Normalizar pontos centrais Pontos iro para a superfcie esfrica Criar trs novos tringulos ligando vrtices do tringulo ao seu ponto central
  • Slide 47
  • 47 6.6 Aproximao de uma esfera por subdiviso recursiva Processo recursivo Cdigo Fonte Cdigo Exec B C A A BC AB BC AC
  • Slide 48
  • 48 6.6 Aproximao de uma esfera por subdiviso recursiva Processo recursivo B C A A BC D
  • Slide 49
  • 49 6.7 Fontes Luminosas no OpenGL Tipos de fontes Ambiente Direcional (localizada no infinito) (xd, yd, zd, 0) Pontual Localizada em um ponto prximo: (xp,yp,zp,wp) Irradia em todas as direes Spot Localizad em um ponto prximo: (xs, ys, zs, ws) Apontada em uma direo principal Limitada lateralmente por um cone
  • Slide 50
  • 50 6.7 Fontes Luminosas no OpenGL Nmero de fontes em um programa Limitado em oito fontes GL_LIGHT0 GL_LIGHT1 GL_LIGHT2 GL_LIGHT7
  • Slide 51
  • 51 6.7 Fontes Luminosas no OpenGL Definir uma fonte de luz (ex: luz 1) Habilitar iluminao glEnable(GL_LIGHTING);

View more >