O que é iluminação por pixel?
"Iluminação por pixel" é um termo usado em computadores gráficos para indicar que uma cena tridimensional (3D) determinará a cor dos objetos em uma base de pixel por pixel, em vez de em uma base de vértice por vertex. O uso da iluminação por pixel em vez da iluminação per-vertex geralmente cria uma imagem ou quadro acabado que possui uma aparência mais realista e muitas vezes mais nítida e mais definida, especialmente quando o mapeamento de bump está sendo empregado. Em geral, a iluminação por pixel é implementada através do uso de shaders de pixels que podem usar várias maneiras de calcular como a luz em uma cena está atingindo uma área específica da cena e que cor a superfície resultante deve ser. Em aplicações 3D nas quais a velocidade da renderização é importante, como uma animação dinâmica, o sombreamento por pixel pode não ser prático, pois pode exigir vários passes através de uma cena ou simplesmente demorar muito e tornar uma taxa aceitável impossível de alcançar.
Uma das formas mais comuns de aplicar luz a uma cena 3D é usar um método conhecido como iluminação por vertex. Essa técnica pega os vértices de um objeto - os pontos em que as linhas de um objeto se encontram - e determina como a superfície de um objeto deve ser nesse local único. Quando todos os vértices de uma cena tiverem informações de iluminação anexadas, o renderizador usará a interpolação ou outros tipos de algoritmos para estimar a aparência da superfície do objeto entre os vértices. Isso geralmente resulta em áreas que dependem de uma alta densidade de vértices em um objeto para atingir efeitos de iluminação nítidos, como um destaque de Phong, enquanto uma forma como um cubo com apenas seis vértices terá uma iluminação ampla e graduada nas superfícies, independentemente da textura ou posição de iluminação.
Por outro lado, um programa pode implementar iluminação por pixel. Isso envolve passar por cada um dos pixels em uma cena rasterizada aND Determinando a cor e a iluminação individuais para cada pixel, independentemente de sua proximidade com um vértice. Os resultados geralmente são iluminados nítidos e precisos, especialmente com efeitos especulares. A troca de melhor qualidade da imagem é um tempo de renderização mais longo, porque cada pixel deve ser processado por um shader de pixels, embora isso nem sempre seja uma preocupação com a modelagem e os gráficos 3D e os programas de renderização que não precisam manter uma quadra específica.
Os efeitos dramáticos da iluminação por pixel quando aplicados adequadamente podem realmente melhorar a aparência de um objeto que possui um mapeamento de inchaço aplicado e os detalhes minuciosos podem ser perdidos com a iluminação por vertex. As texturas processuais também podem se beneficiar de uma abordagem de iluminação por pixel. Além disso, efeitos especiais, como volumes de sombra, requerem o uso de iluminação por pixels, assim como reflexões complexas de iluminação, sistemas de partículas ou mesmo halos em alguns casos.