Eliminação de Superfícies Escondidas

1.500 visualizações

Publicada em

Apresentação para o 1º International Symposium on Interactive Game and Simulation.
Data: 29 de novembro de 2010.
Local: Campus Marquês de Paranaguá da PUC-SP.
Tema: Eliminação de Superfícies Escondidas.
Aluno: José Arthur.

Publicada em: Tecnologia, Arte e fotografia
0 comentários
0 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

  • Seja a primeira pessoa a gostar disto

Sem downloads
Visualizações
Visualizações totais
1.500
No SlideShare
0
A partir de incorporações
0
Número de incorporações
3
Ações
Compartilhamentos
0
Downloads
21
Comentários
0
Gostaram
0
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Eliminação de Superfícies Escondidas

  1. 1. Eliminação de SuperfíciesEliminação de Superfícies EscondidasEscondidas
  2. 2. Eliminação de faces escondidasEliminação de faces escondidas Uma das necessidades de eliminar superfícies escondidas está na interpretação feita pelas vistas. Esta ambiguidade pode ser eliminada removendo as linhas ou superfícies que são invisíveis a partir das duas visões.
  3. 3. Eliminação de faces escondidasEliminação de faces escondidas Alguns objetos podem ocultar outros. Linhas e faces são ocultas pelo próprio objeto ou por outros.
  4. 4. Eliminação de faces traseiras (BackfaceEliminação de faces traseiras (Backface Culling)Culling) Exibição por normais Eficiente quando renderizando poucos polígonos Objetos sólidos convexos
  5. 5. Eliminação de faces traseiras (BackfaceEliminação de faces traseiras (Backface Culling)Culling) Inversão de normais OpenGL Simples Requer capacidade computacional dependendo da implementação
  6. 6. Eliminação de faces traseirasEliminação de faces traseiras (Backface Culling)(Backface Culling)  Determina-se o ângulo entre a direção do observador e o vetor normal de cada face.  As faces ques estão ao lado oposto do observador são determinadas como faces traseiras.  Elimina-se estas faces do desenho (backface culling)
  7. 7. Eliminação de faces traseiras (BackfaceEliminação de faces traseiras (Backface Culling)Culling) vértices linhas Back-Face Culling Inter-object visibility Shading
  8. 8. Eliminação de faces traseiras (BackfaceEliminação de faces traseiras (Backface Culling)Culling)
  9. 9. Eliminação de faces traseiras (BackfaceEliminação de faces traseiras (Backface Culling)Culling)
  10. 10. Eliminação de faces traseiras (BackfaceEliminação de faces traseiras (Backface Culling)Culling)
  11. 11. Eliminação de faces traseirasEliminação de faces traseiras (Backface Culling)(Backface Culling)  Executa-se o cálculo do produto escalar  Positivo para um polígono de face traseira (vetores com ângulo menor que 90º, face virada para trás)  Negativo para um polígono de face frontal (vetores com ângulo maior que 90º, face vira para frente)  Igual a zero para um polígono da face “lateral” (vetores perpendiculares, face não-visível)
  12. 12. Algoritmo do Pintor (Painter’sAlgoritmo do Pintor (Painter’s Algorithm)Algorithm) (Depth-Sorting Method)(Depth-Sorting Method) André LaMothe (AI hardware/software research) Instituto de Pesquisa de Ciência da Computação Avançada da NASA XGameStation Série Black Art
  13. 13. Algoritmo do Pintor (Painter’sAlgoritmo do Pintor (Painter’s Algorithm)Algorithm) (Depth-Sorting Method)(Depth-Sorting Method) Criado por André LaMothe(1995) Surgiu por ser inspirado na maneira que quadros são pintados Ordena polígonos de acordo com a profundidade (extensão Z) Ambiguidade na sobreposição (intersecção)
  14. 14. Algoritmo do Pintor (Painter’sAlgoritmo do Pintor (Painter’s Algorithm)Algorithm) (Depth-Sorting Method)(Depth-Sorting Method)
  15. 15. Algoritmo do Pintor (Painter’sAlgoritmo do Pintor (Painter’s Algorithm)Algorithm) (Depth-Sorting Method)(Depth-Sorting Method)
  16. 16. Algoritmo do Pintor (Painter’sAlgoritmo do Pintor (Painter’s Algorithm)Algorithm) (Depth-Sorting Method(Depth-Sorting Method Cinco testes para consertar ambiguidade: 1.A extensão X dos polígonos não se sobrepõem, então os polígonos não se sobrepõem 2.A extensão Y dos polígonos não se sobrepõem, então os polígonos não se sobrepõem 3.P está totalmente atrás de Q , então os polígonos não se sobrepõem 4.Q está totalmente atrás de P, então os polígonos não se sobrepõem 5.As projeções dos polígonos no plano XY (tela) não se sobrepõem, então os polígonos não se sobrepõem
  17. 17. Algorítmo Z-bufferAlgorítmo Z-buffer Edwin Catmull Co-fundador e presidente do Pixar Animation Studio Pai do Texture Mapping (Ph.D. thesis of 1974.) http://www.youtube.com/watch? v=iizL2iCMe28&feature=player_embedde
  18. 18. Algorítmo Z-bufferAlgorítmo Z-buffer Criado por Edwin Catmull em 1974 Procedimento de preenchimento de polígonos (scan-line Z-Buffer): ◦ Z-Buffer e scan-line Z-Buffer faz a varredura do polígono a ser exibido, linha a linha.
  19. 19. Algorítmo Z-bufferAlgorítmo Z-buffer Dois buffers : ◦ Color/frame Buffer (armazena cor atual de cada pixel); ◦ Z-Buffer - profundidade máxima (armazena para cada pixel, a profundidade do objeto mais próximo).
  20. 20. Algorítmo Z-bufferAlgorítmo Z-buffer Conjunto de pares (x, y) com o valor de z mais próximo do ponto de visão OpenGL (Hardware/Software) Exige memória Desempenho constante Não trata transparência facilmente (precisaria guardar informação sobre polígonos parcialmente cobertos)
  21. 21. Algorítmo Z-bufferAlgorítmo Z-buffer
  22. 22. Algorítmo Z-bufferAlgorítmo Z-buffer Lista of polígonos {P1, P2, ..., Pn} Matriz z-buffer[x,y] inicializado com -8 Matriz Intensidade[x,y] Início para cada polígono P na lista de polígonos faça { para cada pixel (x,y) que intercepta P faça { calcule profundidade-z de P na posição (x,y) se prof-z < z-buffer[x,y] então { Intensidade[x,y] = intensidade de P em (x,y) z-buffer[x,y] = prof-z } } } Desenhe Intensidade fim
  23. 23. ComparaçãoComparação
  24. 24. Árvores BSPÁrvores BSP Henry Fuchs, Zvi Kedem and Bruce Naylor Schumacker, Brand, Gilliland and Sharp Z-buffer não existia
  25. 25. Árvores BSPÁrvores BSP BSP = Binary Space-Partitioning (Partição Binária do Espaço) Criada por Fuchs, Kedem e Naylor em 1980 Permite a ordenação correta dos segmentos de retas, ou polígonos, a partir de qualquer ponto de visão
  26. 26. Árvores BSPÁrvores BSP Fornece ordem de renderização Determina parte visível / escondida de polígonos (DOOM) Planos de corte Ordem back to front
  27. 27. Árvores BSPÁrvores BSP
  28. 28. Árvores BSPÁrvores BSP
  29. 29. Árvores BSPÁrvores BSP
  30. 30. Árvores BSPÁrvores BSP
  31. 31. Árvores BSPÁrvores BSP
  32. 32. Gabriel Estimado PozaGabriel Estimado Poza José Arthur Vigilante MartinsJosé Arthur Vigilante Martins Marina Ikeda UshiroMarina Ikeda Ushiro Jogos DigitaisJogos Digitais 4º Semestre4º Semestre

×