No último post eu expliquei o que são modelos High Poly e Low Poly, suas vantagens e desvantagens na renderização offline. Agora, nessa segunda parte, eu vou falar sobre o uso desses modelos em aplicações de renderização em tempo real (Jogos, passeios virtuais etc). Então, sem demora, vamos lá!
Renderização em Tempo Real

Esse é o verdadeiro desfio da renderização porque aqui não temos horas para renderizar um frame, nem alguns minutos, nem mesmo segundos! Na verdade, um segundo por frame é uma demora muito grande. Imagine ligar seu computador, abrir o seu velho e divertido Portal 2 ou o lindo Dark Souls 3 e, na hora de jogar, a sua tela só muda uma vez a cada segundo… Seria um estrondoso tédio! Um desses jogos só é “jogável” a uma taxa média de 30 a 60 fps (frames por segundo), ou seja, você tem que demorar no máximo 1/30 segundos para cada frame. É uma mudança muito grande em relação ao método offline. Com um caso desses nas mãos, temos que otimizar tudo o que estiver ao nosso alcance. Mesmo com a capacidade das placas de vídeo aumentando e permitindo modelos cada vez mais detalhados, se você tiver muitos modelos detalhados o jogo vai demorar mais para renderizar os frames e vai perder desempenho. Isso pode resultar até em usuários insatisfeitos.
Existem muitas técnicas para otimizar jogos, mas o nosso foco hoje é nos modelos Low Poly e High Poly. Eu citei lá em cima que os Normal Maps são extremamente importantes para a otimização. Eles diminuem a necessidade de reproduzir detalhes pequenos com polígonos, o que melhora muito o desempenho. Imagine que um renderizador precisa analisar cada polígono antes de mostrá-los na sua tela. Assim qual caso parece mais atraente: uma arma com 300 polígonos utilizando um Normal Map ou uma com 30.000 polígonos? Considere que a diferença é visualmente mínima. Claro que é o primeiro caso!
Outra técnica muito utilizada no mundo dos jogos é o Level Of Detail (traduzindo: nível de detalhe). Essa técnica permite que um mesmo objeto seja representado por modelos com resoluções diferentes dependendo da distância para a câmera. Essa substituição é feita em tempo real. Isso é também extremamente útil pois você vai estar próximo de um número relativamente pequeno de objetos na cena, então todos os outros que estão um pouco mais distantes vão ser mais fáceis de renderizar, melhorando o tempo de cada frame.

Resumindo, se você estiver planejando entrar no mundo da modelagem, não foque em apenas um tipo porque os dois tem suas utilidades, vantagens e desvantagens. É comum querermos representar cada mínimo detalhe de um modelo, mas é bom olhar o uso final, já que a complexidade dele afeta diretamente o tempo de renderização, e dependendo do caso, isso pode causar problemas como um filme com prazo atrasado ou jogadores insatisfeitos com o desempenho de um jogo. E p-p-por hoje é só, pe-p-pessoal! Até o próximo post! 🙂