Por dentro de Killzone: Shadow Fall
O Digital Foundry analisa a revelação PlayStation 4 do Guerrilla Games.
O Guerrilla Games tem lançado o seu próprio post-mortem para a demonstração de Killzone: Shadow Fall revelada na PlayStation Meeting, dando um leque de conhecimentos sobre o poder da PlayStation 4 e a sua abordagem fundamental ao novo equipamento. Está incluído um conjunto de estatísticas, incluindo o facto da demo usar cerca de 4.6GB de memória, 3GB dela reservada exclusivamente para gráficos.
A conversa começa com algumas estatísticas básicas - nomeadamente que SF é mesmo um jogo PS4 de lançamento, e que o alvo - para a demo de revelação, pelo menos - são uns "sólidos" 30 fotogramas por segundo a nativos 1080p. O estúdio também revela que este é apenas um de dois projectos internos nos quais está a trabalhar, o outro é descrito como uma "nova e não anunciada PI".
O que se segue é uma completa explicação de quase todas as facetas técnicas da demo, mas o que se destacou para nós foi o uso luxuoso de memória GDDR5 na PS4 - 3GB de RAM reservados para componentes centrais dos visuais, incluindo memória mesh, as texturas e os alvos de renderização (os elementos componentes que são combinados para formar um todo). O Guerrilla também revela que está a usar FXAA pós-processamento da Nvidia como solução anti-aliasing, para que os 3GB não sejam inchados artificialmente por uma técnica AA como multi-sampling. Existe menção a que "ainda" não há MSAA mas o estúdio menciona especificamente que está a trabalhar com o Advanced Technology Group (ATG) da Sony numa nova forma de anti-aliasing, chamada de "TMAA".
Tendo em conta que isto é apenas uma demo de um título de lançamento, 3GB é uma quantidade gigantesca de memória usada para gerar uma imagem 1080p - como os programadores nos avisaram recentemente, falta de RAM de vídeo pode muito bem provar ser um problema chave para jogos no PC consoante transitamos para uma nova era de consolas.
O Guerrilla também delineia a sua filosofia para usar o processador de oito-núcleos da PS4, corroborando novamente as perspectivas de outros estúdios sobre como melhor extrair a melhor performance do esquema AMD. O Guerrilla evoluiu o modelo que desenvolveu na PS3 - tem um esquema de um tópico como um "orquestrador" (isto seria o PPU na PS3), a agendar tarefas que depois são paralelizadas sobre cada núcleo. Esta é a chamada técnica "por trabalhos" que foi usada em muitos jogos de actual geração para tirar o máximo dos seis tópicos da 360 e dos seis SPUs disponíveis na PS3. Ao "expandir" por vários núcleos, o Guerrrila subiu a parada: 80 por cento do código de renderização foi feito por trabalhos na PS3, 10 por cento de lógica de jogo e 20 por cento de código de IA. NA PS4, essas estatísticas sobem para 90 por cento, 80 por cento e 80 por cento respectivamente.
É interessante a apresentação do Guerrilla referir-se explicitamente a "todos" os núcleos serem usados, mas nas imagens das ferramentas de perfil - desenvolvidas pela própria equipa devido à natureza do trabalho em progresso do próprio programa de análise da Sony - apenas parece identificar explicitamente cinco tópicos de trabalho. De momento não temos ideal real de quanto tempo do processador o novo sistema operador suga, e compreendemos que a reserva do sistema esteja em incógnita. No entanto, a ferramenta de perfil mostra que actualmente existem cinco tópicos em trabalho, e o "orquestrador" e cada um deles está fixo a um só núcleo. A inferência que tiramos agora é que apesar da reserva do SO não estar certa, os programadores tem acesso a pelo menos seis dos oito núcleos do processador PS4.
Em termos de real optimização, a "contenção de tópicos" - o processo de um tópico de processador que fica à espera dos resultados de outro - provou ser um problema para o Guerrilla. Ao invés de seguir pelo nível baixo e abordar directamente o processador, o estúdio aponta para optimizações de alto nível como chave para a melhor performance.
Em termos gráficos, é aqui que as melhorias que foram feitas sobre Killzone 3 sejam talvez melhor apreciadas. Para personagens in-game, o jogo PS3 usou três LODs de modelo diferentes (mais polígonos usados quanto mais perto estás do personagem em questão), até 10,000 polígonos e texturas 1024x1024. As coisas mudaram imenso na PS4 com sete modelos de LODs e um máximo de 40,000 polígonos e até seis texturas 2048x2048.
A passagem geométrica suga mais tempo de processamento da gráfica do que outro sistema, mas o estúdio admite prontamente que o detalhe extra apenas oferece um "aumento incremental na qualidade" sobre Killzone 3, com a maior parte do aumento visual a vir da variedade de materiais empregues, o modelo de iluminação e todas as outras mudanças no motor. Existe também a sensação pela apresentação que o Guerrilla ainda está a procurar acertar em termos de optimização - especificamente em termos de shaders de pixeis e vértices, onde existe discussão sobre simplificação aqui a potencialmente abrir a porta para o dobro da contagem de polígonos.
A iluminação parece simplesmente fenomenal em Shadow Fall (ao ponto do Guerrilla ter lançado uma apresentação completamente separada sobre como funciona) com full HDR, sistema linear de espaço presente que é uma clara evolução de técnicas usadas em Killzone 2 e sequela. Uma nova funcionalidade chave é algo similar ao que vemos no FOX Engine do Kojima Productions e no Unreal Engine 4 - uma passagem para iluminação baseadas no físico. No passado, objectos no jogo teriam um certo nível da sua iluminação pré-renderizada no próprio objecto. Agora, as propriedades físicas do próprio objecto - a sua composição, a sua suavidade/dureza etc - são variáveis definidas pelo artista, e a forma como são iluminados depende de reais fontes de luz em qualquer cena.
É uma gigantesca e fundamental mudança na forma como os elementos in-game são criados e precisou de um enorme grau de treino da parte do pessoal do Guerrilla, o sistema evoluiu gradualmente ao ponto dos especialistas da renderização e artistas estarem contentes com o nível de controlo que tinham, e os resultados no ecrã. Durante esta evolução todas as luzes em qualquer cena tornaram-se "luzes de área" - capazes de influenciar o mundo ao seu redor, e todas as fontes de luz tem verdadeiro volume. Tudo no ecrã tem reflexo em tempo real que considera todas as devidas fontes de luz. Uma mistura de técnicas inclui o criar de raios de luz e iluminação por imagem produz alguns resultados excepcionais.
Apenas podemos começar mesmo a cobrir os básicos desta apresentação (técnicas de iluminação em si são realmente complexas) - existe a sensação que o estúdio está a entrar em território desconhecido até certa medida e a surpreender-se com os resultados do processo de aprendizagem. A lição geral que temos aqui é que o desenvolvimento na nova geração está nas primeiras etapas, e por muito impressionante que seja, a demo de SF é na mesma um trabalho em progresso e devemos esperar muitas melhorias no jogo final. A equipa em si está claramente muito contente com a facilidade do desenvolvimento na PS4, e identificou o paralelismo por trabalhos como a melhor forma de tirar o máximo da arquitectura multi-núcleos, e apesar da gráfica é considerada como muito rápida, a optimização shader parece ser a chave para tirar o máximo dela.
O que é interessante é que o estúdio diz que a memória GDDR5 realmente dá ao sistema as "suas asas", e aplaude a imensa largura de banda a 176GB/s disponível. No entanto, não é um poço sem fundo de passagem sem limites - esforços precisam ser feitos para usar formatos pequenos de pixeis para maximizar a performance. Tendo em conta que a vasta, unificada piscina de memória da RAM de alta largura de banda é uma das vantagens principais que a PS4 tem sobre o PC e nova Xbox, será interessante ver como se portam os projectos multi-plataforma.
Também é fascinante que por sua própria admissão o Guerrilla não está a usar muita da funcionalidade computacional do núcleo gráfico da PS4 - na sua conclusão da apresentação diz que apenas existe um trabalho computacional na demo, e é usada para desfragmentação de memória. Pesando como a Sony aclamou a tecnologia na revelação da PS4, é um interessante estado e talvez demonstre o quão longe teremos que ir para tirar o máximo desta tecnologia - apesar das suas muitas similaridades com existente equipamento PC.