Ray Tracing: Tecnologia para gráficos ainda mais realísticos

Você está correndo com o personagem do jogo, através do pátio de uma base militar fortemente armada. Inimigos espreitam nos arredores do complexo principal. Em meio a explosões e tiros de todos os lados, você busca abrigo entre as árvores. A brisa suave balança as folhas das árvores e os raios crepusculares de sol atravessam a densa folhagem, entregando sua posição aos inimigos mais próximos, que viram sua sombra projetada no gramado.

Este cenário é um exemplo perfeito para exemplificar como a tecnologia Ray Tracing irá tornar os gráficos e efeitos de iluminação ainda mais realísticos, sendo gerados em tempo real de acordo com o que acontece no jogo.

A tecnologia Ray Tracing foi desenvolvida em conjunto com a NVIDIA, AMD e Microsoft, originalmente criada para ser utilizada na computação gráfica de efeitos especiais e animações para a indústria do cinema, reproduzindo luzes e sombras mais fiéis à realidade.

Até então, a tecnologia de renderização nos jogos (rasterização), se baseava e pegar um ponto na fonte de iluminação (um sol por exemplo) e projetar raios de luz em cada um dos objetos do cenário, que são refletidos em várias direções.

O problema desta antiga técnica é que há um enorme custo de processamento para gerar sombras e iluminações no cenário, para conseguirmos então um resultado mais próximo possível da realidade.

Em uma animação feita em computador, são necessários centenas de computadores trabalhando simultaneamente para realizar a renderização de todas as cenas, e horas de processamento para cada quadro (frame).

Em jogos, as coisas são um pouco mais complicadas, uma vez que o cenário é interativo e não uma cena de uma animação pré-renderizada.

Recentemente a NVIDIA, AMD e Microsoft anunciaram o DirectX Raytracing (DXR), uma extensão da API gráfica DirectX 12, que permite de forma mais simples, traçar raios de luz em um ambiente 3D nos jogos, como resultado de uma pesquisa de 10 anos da NVIDIA em sua tecnologia Ray Tracing (RTX).

Isto significa que qualquer placa de vídeo que suporte a API DirectX 12, será compatível com o recurso.

Com o Ray Trancing, ao invés de gerarmos bilhões de raios de luz, podemos gerar apenas um único raio por pixel e utilizar a inteligência artificial para fazer uma prévia de como será o resultado da imagem final.

Este processo gera muito ruído na imagem, dando um aspecto granulado onde um maior contraste de cores seria necessário. Para resolver este problema, é aplicado um filtro chamado AI Denoiser, que deixará a imagem limpa e como se tivesse sido renderizada com milhares de raios por pixel.

Com o Ray Tracing, ao invés de usar a fonte luminosa como ponto de partida do raio de luz, o processo é reverso. O cenário é mapeado e o raio de luz parte a partir dos objetos até encontrarem a fonte luminosa.

Desta forma não será preciso processar milhares de pixels que não seriam influenciados na cena. Somente os objetos que possuírem sombras, reflexos luminosos e efeitos de oclusão de ambiente serão processados e renderizados. Isto significa um custo absurdamente menor de processamento.

Apesar de uma chegada um pouco tardia na indústria de jogos, em função das limitações de hardware das placas de vídeo até então, a tecnologia vem aprimorando seus algorítimos e fazendo uso dos núcleos CUDA no caso das GPUs NVIDIA e dos processadores stream no caso das GPUs AMD, trabalhando sem comprometer a performance dos jogos ou sobrecarregar as GPUs.

Algumas desenvolvedoras de jogos já estão implementando em sues jogos, a tecnologia Ray Tracing, a exemplo da 4A Games, que implementou o recurso no jogo Metro Exodus.

Comentários

Comentários


Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *