Olá, caros usuários. Hoje queremos explicar, principalmente para os gamers, o que é o termo Z-Buffering.

Antes de mais nada, tente imaginar alguém que entra bem na sua frente quando você está vendo televisão. Em relação a você, o corpo desta pessoa está num plano a frente do da TV e por isso acaba escondedo a imagem do televisor.

Na prática, o Z-Buffer funciona de maneira parecida. É claro que devemos adaptar a história à computação gráfica, já que o termo designa um algoritmo encarregado de gerir as coordenadas de profundidade das imagens nos gráficos em 3D, normalmente calculados por hardware ou software. De todos os algoritmos para determinação de superfície visível, o buffer de profundidade ou Z-Buffer é talvez o método mais simples e com certeza o mais amplamente utilizado. Confira abaixo: 

 

 

O princípio de funcionamento desse algoritmo é basicamente o seguinte: mantém-se um registro da profundidade (coordenada z) para cada pixel do objeto de cena que estiver no plano mais perto na Viewport. A partir daí determina-se a intensidade, cor, etc. que compõe esse ponto na tela. Então quando um novo polígono é processado, novamente é obtido um valor de z e a intensidade/cor para cada pixel que estiver dentro dos limites do polígono. 

Como demonstrado no vídeo acima, é feita uma comparação baseada nas informações armazenadas no buffer dos polígonos, sendo que o que tiver maior valor de coordenada z vai ocultar o outro, pois está situado num plano mais próximo. Por isso utilizamos o exemplo daquele "amigão" que fica na frente da TV.

Neste caso, substitui-se o valor armazenado naquela posição do buffer por este novo valor. Se não for realizado nenhum cálculo de radiosidade ou outra técnica de raytracing mais avançada, após o processamento de todos os polígonos da cena, o buffer de intensidade/cor resultante representará exatamente os valores dos pixels da Viewport.

Cupons de desconto TecMundo: