Shadow Mapping com múltiplos valores de profundidade

Um dos algoritmos para cálculo de sombras mais eficientes existentes atualmente é o Shadow Mapping de Williams. Ele é simples, robusto e facilmente mapeável para o hardware gráfico existente. Este algoritmo conta com duas etapas. A primeira é responsável pela geração de um depth buffer (Shadow Map)...

Descripción completa

Detalles Bibliográficos
Autor: Pagot, Christian Azambuja
Tipo de recurso: tesis de maestría
Estado:Versión publicada
Fecha de publicación:2005
País:Brasil
Institución:Universidade Federal do Rio Grande do Sul (UFRGS)
Repositorio:Biblioteca Digital de Teses e Dissertações da UFRGS
Idioma:portugués
OAI Identifier:oai:www.lume.ufrgs.br:10183/25503
Acceso en línea:http://hdl.handle.net/10183/25503
Access Level:acceso abierto
Palabra clave:Computação gráfica
Sombras : Computação gráfica
Shadows
Graphics hardware
Shadow map
PCF
Descripción
Sumario:Um dos algoritmos para cálculo de sombras mais eficientes existentes atualmente é o Shadow Mapping de Williams. Ele é simples, robusto e facilmente mapeável para o hardware gráfico existente. Este algoritmo conta com duas etapas. A primeira é responsável pela geração de um depth buffer (Shadow Map) a partir do ponto de vista da luz. Na segunda etapa a imagem final da cena é gerada a partir do ponto de vista da câmera. De maneira a determinar se os pixels da imagem final estão iluminados ou em sombra, cada pixel é transformado para o espaço da luz e testado contra o Shadow Map. Shadow Maps tradicionais armazenam apenas um valor de profundidade por célula, fazendo com que os testes de sombra retornem valores binários. Isso pode ocasionar o surgimento de aliasing nas bordas das sombras. Este trabalho apresenta uma nova abordagem capaz de produzir melhores resultados de suavização que, em conjunto com o algoritmo de PCF (Percentage Closer Filtering), reduz o serrilhado das bordas das sombras através do uso de filtros de menor tamanho. O novo algoritmo estende os conceitos de Shadow Map e de teste de sombra de forma a suportarem múltiplos valores de profundidade. Esta nova abordagem apresenta potencial para implementação em hardware, e também pode ser implementada explorando a programabilidade das recentes placas gráficas.