DirectX 12 Ultimate unificará gráficos de jogos para PC e console
Por Rafael Arbulu |
A GDC pode ter sido cancelada, mas as novidades pertinentes ao maior evento do mundo para a indústria de desenvolvimento de jogos seguem a todo vapor. Em apresentação para a imprensa nesta quinta-feira (19), a Nvidia mostrou o que planeja oferecer aos gamedevs no que tange à área gráfica para os jogos de 2020.
Entre diversas novidades, destacou-se o anúncio do suporte ao DirectX 12 Ultimate (DX12 Ultimate), o mais recente conjunto de APIs da Microsoft, à linha de placas de vídeo GeForce RTX. Os modelos dessa linha são, segundo a Nvidia, os mais indicados para entusiastas de algumas tendências bem em alta no setor, como ray tracing e outros nomes bem técnicos, como variable rate shading, mesh shader e sampler feedback. A própria Microsoft também promoveu uma conferência para falar do DX12 Ultimate.
Embora os nomes sejam bem pomposos, sua compreensão é relativamente simples: “A ideia é oferecer ao desenvolvedor o ganho de desempenho que ele sempre teve, mas sem sacrificar a qualidade de imagem”, explica Alexandre Ziebert, gerente de marketing técnico da Nvidia, em entrevista ao Canaltech. Segundo ele, os nomes acima contribuem para a criação de um ecossistema que facilita a vida do desenvolvedor na hora de criar a parte visual de um jogo.
Segundo as empresas, a tecnologia funciona ao trazer uma espécie de “unificação” entre os gráficos de jogos para PC e console. Basicamente, a ideia da Microsoft é que jogos em ambas as plataformas compartilhem do DX12 Ultimate a fim de simplificar o processo de desenvolvimento sem perder qualidade de imagem ou processamento.
“O Xbox One, por exemplo, tem três sistemas operacionais, cada um com sua finalidade. O Xbox Series X, em tese, tem o mesmo sistema de um PC, salvo pelas suas particularidades, mas a ideia é que o kernel seja o mesmo. Para a Microsoft, há uma importância de que isso seja unificado [entre Windows e consoles de mesa]. A grosso modo, isso permite que o desenvolvimento de jogos dentro do DX12 Ultimate siga o mesmo processo independente da plataforma, ao invés do que se vê hoje, onde cada um tem o seu próprio método de aplicação”, endossa Ziebert.
Ele ainda argumenta que, sob o mesmo guarda-chuva, dificuldades relacionadas à integração de recursos seriam minimizadas, quando não anuladas.
A ideia de unificação é uma que a própria Microsoft vem perseguindo há tempos: ultimamente, vemos uma mudança no discurso da empresa ao transformar o Windows 10 em uma plataforma de serviço (constantemente atualizada) ao invés de lançar uma nova versão do sistema operacional a cada grande atualização. No que tange aos consoles, a companhia de Redmond vem, dentro do possível, adotando a mesma premissa, aprimorando serviços de conectividade como o Xbox Game Pass. Essa ideia de “jogos como serviço” deve ditar os rumos da Microsoft em 2020.
E o DirectX 12 Ultimate também será padrão no Xbox Series X, o próximo console da Microsoft, previsto para ser lançado entre novembro e dezembro de 2020.
Mas o que a Nvidia tem a ver com isso? Segundo a apresentação da empresa, sua API proprietária para ray tracing (NVidia Optics) foi incorporada como padrão ao processo de ray tracing dentro do DX12 Ultimate.
A nova API da Microsoft é fundamentada nos quatro pilares essenciais que nomeamos acima. Todos eles trabalham em conjunto para assegurar que existe uma comunicação fluída entre hardware e software em ambas as plataformas. E com base nisso, Ziebert tomou um pouco do seu tempo para detalhar o que faz cada um dos pilares:
1. Ray Tracing
Começando pelo mais conhecido, o ray tracing é, resumidamente, o um recurso gráfico que permite a jogos e outros produtos audiovisuais reproduzirem efeitos e consequências de luz com alta fidelidade. “Pense em uma superfície que mostre o reflexo do personagem: o ray tracing faz isso de forma correta”. E isso vale para tudo, desde o reflexo de um personagem em uma superfície espelhada até a distorção irreal dessa imagem se o reflexo for, digamos, as curvas da lataria de um carro; até mesmo a sombra projetada por um obstáculo à luz. É o ray tracing que assegura que tudo isso seja representado fielmente.
2. Variable Rate Shading (VRS)
Basicamente, é um recurso que faz com que o sistema priorize áreas de reprodução visual, reduzindo a qualidade propositalmente em áreas menos importantes para valorizar aquelas onde o jogador tende a prestar mais atenção. Segundo Ziebert, dentro da tecnologia da Nvidia existem tiers de VRS, com destaque para o segundo tier, que permite um ajuste mais fino de imagem, em duas atribuições específicas da empresa — Content Adaptative Shading (“voltado para imagens estáticas, por exemplo, uma mesa no cenário”) e Motion Adaptative Shading (“quando a câmera muda de visão e a imagem fica levemente embaçada, tal qual acontece com o olho humano”). “Ambos são combinados na renderização inteligente de ambos os objetos. Um jogo que já faz uso disso é Wolfenstein: Youngblood", explica o gerente.
3. Mesh shaders
“Dentro do pipeline gráfico nas APIs tradicionais da Nvidia, há anos você conta com unidades gráficas dedicadas a processarem geometria”, explica Ziebert, dizendo que isso pode ser enxergado, por exemplo, como triângulos que são incorporados ou deletados de uma imagem conforme a sua capacidade de vê-los. “Em nossa demo de Asteroids, isso foi bastante aplicado: imagine um asteróide... você vê a parte da frente, mas não a de trás, então não há necessidade de gastar desempenho com o que você não enxerga. Em compensação, aquilo à sua frente terá uma qualidade superior de imagem. Basicamente, você passa as coordenadas de um objeto para a GPU e ela traduz isso em imagem na tela. Nas versões atuais, esse recurso funciona como uma função dentro da GPU, sem interferência do processador, ou seja, ganho de desempenho e de qualidade de imagem”.
4. Sampler Feedback
Esse recurso assegura uma melhor qualidade visual ao mesmo tempo em que entrega um tempo de loading mais curto e menos engasgos de processamento, usado por desenvolvedores para fazer com que texturas sejam carregadas na tela apenas quando elas forem necessárias.
“A ideia disso é que [o sistema] possa, em vez de montar a imagem completa a cada frame, fazer isso com pedaços da imagem, salvando tudo como se fosse uma textura e, no quadro seguinte, reaproveitando essa textura”. Na apresentação da Nvidia, foi dado o exemplo de uma montanha. Ziebert se aprofundou nessa ideia: “em uma montanha, você vê os mesmos 20 ou 30 quadros, então isso não precisa ser feito e refeito 20 ou 30 vezes”. O executivo assegura que essas pequenas ações, provenientes da aplicação da inteligência artificial no sistema gráfico, trazem ganhos otimizados de performance sem afetar a qualidade da imagem.
Ziebert explica que, embora no Windows os ganhos não sejam tão significativos (mas igualmente notáveis e bem-vindos), é no Xbox Series X que isso vai se mostrar mais evidente: “estamos falando em ganhos dobrados ou triplicados em memória física e desempenho de SSD".
A Nvidia ainda coletou depoimentos de alguns profissionais de estúdios de desenvolvimento que já vêm experimentando com o DX12 Ultimate há algum tempo:
Marcus Wassmer, diretor de engenharia e gráficos da Epic Games
"O DX12 Ultimate traz o que há de mais recente em tecnologia de hardware gráfica com suporte aoray tracing, mesh shaders e variable rate shading. É o novo padrão para a próxima geração de jogos".
Anton Yudintsev, CEO da Gaijin Entertainment
"Ao investir nas funções gráficas da nova geração usando o DirectX 12 Ultimate, nós sabemos que nosso trabalho será beneficiado tanto no PC como nos consoles, e nossos jogos terão o visual que sempre sonhamos que tivessem".
Chris Larson, COO da Hi-Rez Studios
"O DirectX 12 Ultimate vai acelerar a adopção de função gráficas de ponta porque as plataformas de desenvolvimento não estão mais fragmentadas. Com ele, eu sei que posso adotar funções gráficas inovadores imediatamente, e que elas funcionarão no PC e nos jogos do Xbox. Já estamos experimentando com o DirectX Ultimate para o jogo Rogue Company, que será lançado ainda em 2020".
Koen Deetman, CEO e diretor de jogos da KeokeN Interactive
"Como um desenvolvedor, uma API única para OC e Xbox é uma bênção para meus negócios. Se meus programadores conhecem o DX12 Ultimate, eles são capazes de codificar tanto para PC como para console".
Mina Boström Nakicenovic, CTO da Paradox
"O DirectX 12 Ultimate vai acelerar a adoção de novas tecnologias e encolher ciclos de desenvolvimento. As ferramentas e amostras oferecidas pela Nvidia para o ray tracing são de uma classe superior, e o DirectX 12 Ultimate significa que elas agora beneficiam a versão do meu jogo para Xbox".
Mika Vehkala, director de tecnologia da Remedy Entertainment
"O DirectX 12 Ultimate será o acelerador da adoção de tecnologia gráfica de ponta nos videogames, simplesmente porque não existirá mais fragmentação de plataformas. Com o DirectX 12 Ultimate, nós vamos adotar funções visuais em múltiplas plataformas mais rápido do que nunca".