Implementando Shadow Volumes Utilizando Stencil Buffer

1411 palavras 6 páginas
Stencil Buffer
Euclides Cardoso Júnior
Nelson Luiz Silva Ferreira
Vinicius Canalli Massignan
Victor Hugo Gomes

Resumo: Este artigo visa esclarecer as características do Stencil Buffer, assim como o seu conceito, seu funcionamento através de exemplos e imagens. Uma das principais funções do Stencil Buffer é a sua utilidade na criação de sombras de diversos tipos, essa parte será exemplificada utilizando blocos de códigos assim como a sua inicialização entre outros.
Abstract: This article aims to clarify the characteristics of the Stencil Buffer, as well as its concept and its operation through examples and images. One of the main functions of the stencil buffer is its usefulness in creating shadows of various types, that part will be exemplified by blocks of code as well as its initialization among others.

1. Stencil Buffer
Um Stencil Buffer contém dados inteiros por pixeis e é usado para determinar em qual área da tela que esses pixeis podem ser ou não renderizados. Além disso, pode ser utilizado em combinação com buffer de profundidade para criar sombras ou contornos.
O Stencil Buffer utiliza um Z Buffer para armazenar seus dados, mas diferente do Z Buffer que usa os seus dados para determinar qual pixel é o mais próximo da câmera, o Stencil usa seus dados como uma máscara para salvar ou descartar pixeis.
O armazenamento de dados no Stencil Buffer é feito desenhando-se sobre a tela OpenGL, no caso, deseja-se colocar dados no Stencil Buffer, para isso define-se funções de testes que irão colocar ou não os dados na área do Stencil Buffer, dependendo do resultado dos testes [1].
Uma máscara de Stencil é uma matriz binária que tem como objetivo desenhar um objeto dentro de um Stencil Buffer. Nessa máscara cada pixel recebe um valor onde o valor 0 é atribuído aos pixeis que não serão desenhados e 1 para os que serão desenhados. A seguir um exemplo dessa matriz:

00000000000 00001110000 00001110000 00000000000 é possível

Relacionados

  • Técnico em Informatica
    25731 palavras | 103 páginas