Análise Tecnológica: Demo de Crysis 2
Poder tecnológico para todos?
Será que as consolas conseguem correr Crysis? É uma questão que a Digital Foundry considerou várias vezes no passado, baseada nas sequências da demo tecnológica que a Crytek divulgou, mostrando o seu motor de topo, o CryEngine 3, a correr na Xbox 360 e PlayStation 3. A recente demo no Xbox Live para vários jogadores de Crysis 2 permite-nos revisitar novamente este tópico, desta vez com o benefício de deitar as mãos ao código.
Neste momento, é seguro dizer que as nossas descobertas estão longe se estarem completas. O único nível que os jogadores podem testar é um cenário específico multiplayer e não parece ter muita relação com a acção da campanha que vimos até agora. A Crytek também já mencionou oficialmente que a demo é baseada numa versão de Crysis 2 que já tem algumas semanas, sugerindo que um leque de pequenas mudanças vão ser feitas no jogo final.
Enquanto a amostra não nos dá o tipo de vista expansiva da tecnologia que gostaríamos, vale na mesma efectuar uma análise aprofundada e deve dar-nos alguma ideia do progresso desde que a Crytek lançou a sua última demo tecnológica, logo após a GDC, quase há um ano.
Um dos principais problemas em vídeos anteriores que mostravam elementos de Crysis 1 ou Crysis 2 dentro do CE3 framework, tem sido o rácio de fotogramas – como seria de esperar de tecnologia cujas bases vem de um motor PC de topo. Nas consolas, vimos a v-sync ligada e desligada em vários vídeos ao longo de um leque de demos tecnológicas e sem surpresas, também notámos uma grande variação no nível de performance. Relatórios na recente beta fechada da Xbox 360 também se queixavam sobre a fluidez da jogabilidade, notando que o jogo operava a um rácio de fotogramas desbloqueado, adicionando uma maior sensação à flutuação da performance.
"Temos em vista 30 [fotogramas por segundo]", disse o CEO da Crytek, Cevat Yerli, ao VG247. "Não há nada abaixo, nada... estou muito feliz por o jogo funcionar num todo. Penso que a quantidade de esforço que temos e o facto de o jogo funcionar como tal, coloca-me numa situação muito feliz actualmente."
Enquanto as velhas demos tecnológicas do tempo em que Yerli fez as suas declarações claramente não estão à altura das suas aclamações, o código mais recente está muito, muito aproximado. A consistência geral da jogabilidade na demo é excelente, o que é especialmente impressionante tendo em conta o leque de funcionalidades avançadas do CE3. O jogo está efectivamente v-synced, operando de forma similar a Halo: Reach. Quaisquer fotogramas quebrados estão limitados ao topo do ecrã e como tal são virtualmente imperceptíveis, se bem que é interessante notar que ao longo do curso de jogo, Crysis 2 na verdade parece ser mais suave que o último jogo da Bungie, baseado no que vimos até agora.
Existem outras similaridades com Reach. A resolução nativa na Xbox 360 está confirmada como 1152x720 – presumivelmente escolhida para fazer uso mais efectivo dos super rápidos 10MB de eDRAM directamente ligados à unidade de processamento gráfico (GPU) do Xenos. Novamente, tal como Reach, rendering de alto alcance dinâmico (HDR) é suportado, portanto as probabilidades são que a Crytek optou por esta constituição de framebuffer por muitas das mesmas razões que a Bungie explicou na recente entrevista tecnológica para a Digital Foundry.
Os paralelos com o mais recente épico da Bungie continua em outras áreas da qualidade de imagem: a Crytek também empregou uma técnica de anti-aliasing muito similar. O AA temporal é o processo de juntar dados do último fotograma com o actual, geralmente com um rebordo de meio pixel em outros fotogramas. A ideia é que todo o tempo de rendering gasto nos cálculos anteriores não é largado em favor de processamento fresco para um novo fotograma. Uma vez que muitas coisas da nova imagem serãoe similars, pode ser combinada com a anterior para reduzir problemas de arestas e outras formas de aliasing.
Discutimos a abordagem inovadora da Crytek há algum tempo, uma vez que oferecia-se para trazer algo novo para cima da mesa. O AA temporal tem um problema, que de efeitos fantasma surgirem no jogo, especialmente em objectos a moverem-se perto da câmara, ou mesmo em qualquer objecto largo em movimento. Uma demo tecnológica do CryEngine 3 mostrou uma intrigante abordagem no uso de AA temporal para detalhe distante, com uma detecção de arestas e blur para objectos aproximados.
A própria demo mostrou alguns resultados excelentes:
A implementação na demo multiplayer de Crysis 2 na Xbox 360 não parece ser tão forte. Se não fosse pelo AA de arestas estar activado no ficheiro de configuração da demo, seria difícil reconhecer que estava a ser usado sequer, e é claro que a AA temporal pode apresentar alguns artefactos de efeito fantasma muito óbvios a um alcance surpreendentemente aproximado.
Ao contrário de Halo: Reach, não temos a tendência de ver qualquer tipo de efeito fantasma na perspectiva da arma, mas existem na mesma problemas com o detalhe do cenário – provavelmente o exemplo mais notório está nas turbinas de vento da demo Skyline, que está em contraste em frente da skybox, realçando o efeito fantasma.
Mitigando o efeito em alguns locais está a excelente implementação da Crytek de motion blur baseado em objectos e câmara. Isto pode muito bem ser um shooter a 30FPS, mas muitas pessoas notaram que a sensação geral de jogo é muito similar a Call of Duty. Enquanto todos os jogos COD alcançam os 60 fotogramas por segundo, Crysis 2 corre a metade do rácio de fotogramas, mas graças a uma rápida resposta do comando combinado com o efeito de motion blur, a sensação é a de um jogo que se destaca da classe 30FPS.
Que tenha um aspecto tão impressionante não devia ser realmente tão surpreendente. O Crysis original no PC minava recursos mesmo nos PCs mais poderosos nas suas definições mais elevadas, mas a implementação de moton blur (especialmente no modo DX10) ajudava na produção de um aspecto significativamente mais suave do que os rácios de fotogramas crus sugeriam.