1. Como é inicializado o Z-buffer antes do processo de renderização?

Passo 1

O enunciado pergunta como o Z-buffer (depth buffer) é inicializado antes de começar a renderização. Esse é um passo do algoritmo de rasterização para garantir que, ao processar fragmentos, o teste de profundidade funcione corretamente.

Passo 2

Antes de desenhar qualquer polígono, percorre-se todo o Z-buffer e atribui-se a cada pixel o valor de profundidade máxima (ou “infinito”). Na prática gráfica normalizada, usa-se com frequência o valor \,1{,}0, que corresponde ao plano mais distante do volume de visualização. Em APIs como OpenGL isso é feito com:
\text{glClearDepth}(1{,}0);\quad \text{glClear}(\text{GL\_DEPTH\_BUFFER\_BIT});
Assim, todo elemento começará com profundidade \infty (ou \,1{,}0 no NDC), permitindo que o primeiro fragmento sempre passe no teste de profundidade.

Resposta

O Z-buffer é limpo atribuindo a cada posição o valor de profundidade máxima (tipicamente infinito ou \,1{,}0 no espaço normalizado) antes do início da renderização.

Exercícios relacionados