O que é o rastreamento de raio?
Recentemente, uma demonstração da Epic, criadora do Unreal, levantou as sobrancelhas para seus efeitos de iluminação foto-realistas. A técnica é um grande passo em frente para o traçado de raios. Mas o que isso significa?
O que Ray Tracing faz
Simplificando, ray tracing é um método que um mecanismo gráfico usa para calcular como as fontes virtuais de luz afetam os itens em seu ambiente. O programa literalmente vestígios a Raios de luz, usando cálculos desenvolvidos por físicos que estudam a maneira como a luz real se comporta.
Mecanismos gráficos como Unreal ou Unity usam o ray tracing para renderizar efeitos de iluminação realistas - sombras, reflexos e oclusões - sem precisar renderizá-los como seus próprios objetos individuais. Embora seja bastante intensivo do ponto de vista de processamento, usá-lo para renderizar somente o que a câmera (ou seja, o player) precisa ver em qualquer momento significa que ele pode ser mais eficiente do que outros métodos mais antigos de simulação de luz realista em ambientes virtuais. Os efeitos de iluminação específicos são renderizados em um único plano bidimensional na perspectiva do observador, não constantemente em todo o ambiente.
Tudo isto é conseguido com alguma matemática estupendamente complexa, tanto em termos de realmente determinar a maneira como a luz virtual se comporta quanto quanto desses efeitos são visíveis para o espectador ou jogador a qualquer momento. Os desenvolvedores podem usar versões menos complexas das mesmas técnicas para dar conta de hardware menos potente ou um jogo mais rápido e suave.
O traçado de raios é uma abordagem geral dos gráficos, e não de qualquer técnica específica, embora tenha sido constantemente aprimorado e aprimorado. Ele pode ser usado em gráficos pré-renderizados, como os efeitos especiais vistos em filmes de Hollywood ou em mecanismos em tempo real, como os gráficos que você vê no meio da jogabilidade durante um jogo de PC..
O que há de novo no Ray Tracing?
A demonstração que obteve o traçado de raios nas notícias recentemente é a do vídeo abaixo, um pequeno Guerra das Estrelas esboço envolvendo alguns stormtroopers com timing muito ruim. Foi exibido na Game Developer's Conference na semana passada. Foi criado pela Epic Games (criadora do onipresente Unreal Engine) em parceria com a NVIDIA e a Microsoft para mostrar novas técnicas de rastreamento de raios..
Fora de contexto, é apenas um vídeo bobo. Mas o importante é que está sendo processado em tempo real, como um videogame, não de antemão como um filme da Pixar. O vídeo abaixo mostra o apresentador fazendo o zoom da câmera através da cena com controles em tempo real, algo que não é possível com gráficos pré-renderizados.
Teoricamente, se o seu PC de jogos for poderoso o suficiente, ele pode gerar gráficos como esse em qualquer jogo usando os novos efeitos de iluminação de traçado de raios na próxima versão da demonstração do Unreal..
A tecnologia realmente brilha (entendeu?) Porque esta demonstração específica inclui muitas superfícies refletivas e espelhadas com geometria irregular. Confira como o ambiente é refletido nos painéis curvados da armadura cromada do Capitão Phasma. Tão importante quanto isso, observe como é refletido de forma mais densa e difusa da armadura branca das stormtroopers normais. Este é um nível de iluminação realista que não está disponível em jogos hoje.
Será que vai fazer meus jogos parecerem impressionantes??
Bem, sim, em circunstâncias muito específicas. Esse nível avançado de traçado de raios facilita a reprodução de efeitos de iluminação mais impressionantes nos videogames, mas não torna a estrutura poligonal dos gráficos mais detalhada. Não aumenta a resolução das texturas nem aumenta a fluidez das animações. Em suma, isso fará com que a iluminação pareça realista, e é sobre isso.
A demonstração acima é particularmente dramática porque os desenvolvedores escolheram personagens e ambientes em que quase todas as superfícies estão brilhando ou refletindo a luz. Se você usa a mesma tecnologia para processar, digamos, o protagonista de O Mago série montando seu cavalo pelo campo, você não verá nenhuma superfície refletora, exceto sua espada e talvez um pouco de água. Crucialmente, as técnicas de traçado de raios não farão muito para melhorar a aparência de sua pele, o pêlo do cavalo, o couro de suas roupas, e assim por diante..
As manchetes que vieram desta demonstração alegando que isso resultaria em “gráficos de filmes de grande sucesso” eram um pouco de hipérbole - isso pode ser verdade se você estiver jogando um nível definido em uma sala de espelhos, mas é sobre isso.
Quando vou ver essas coisas nos meus jogos??
A demonstração do GDC foi um exemplo de uma técnica proprietária de traçado de raios chamada RTX, agora desenvolvida pela NVIDIA. Ele deve estrear na próxima série de placas gráficas GeForce, atualmente com rumores de estrear no final deste ano com os números do modelo 20XX. Como outras tecnologias gráficas proprietárias, como a PhysX da NVIDIA, ela provavelmente não estará disponível para players que usam placas gráficas de outros fabricantes..
Dito isto, o RTX também está usando um novo recurso do sistema DirectX API especificamente para o ray tracing (chamado raytracing pela Microsoft). Assim, enquanto as demonstrações específicas acima são uma colaboração entre a Epic e a NVIDIA, não há nada que impeça os fabricantes concorrentes, como a AMD e a Intel, de criar sistemas semelhantes com resultados semelhantes..
Para simplificar, você verá que jogos de PC de alto nível começam a usar essas técnicas no final de 2018 e início de 2019. Os jogadores que investem em novas placas gráficas nessa época verão o maior benefício, mas se você já tiver um sistema de jogos de ponta, você pode usar alguns desses efeitos em jogos compatíveis com o DirectX no seu hardware atual.
Devido a longos tempos de desenvolvimento e metas estáticas de hardware, os jogadores de console não verão esses gráficos avançados até que a próxima rodada de consoles de jogos seja lançada em vários anos..
Crédito da imagem: NVIDIA, Epic / YouTube, Guru3D / YouTube