Um exemplo de como jogos patrocinados deixam ao comprador de videojogos a ideia de que é burlado.

Ultimamente temos falado por várias vezes de pagamentos para optimizações para hardware específico. A ideia é não só obter melhores performances em determinado hardware, mas há relatos de que com tal se está a prejudicar o hardware da concorrência. E nesse aspecto, a Nvidia, que patrocina tantos jogos actualmente para sair, é uma das empresas que mais tem sido acusada de jogar de forma menos correcta. Crysis 2 é um bom exemplo de um jogo que se crê ter sido subvertido para beneficiar a Nvidia.

Temos discutido aqui que é um pouco incompreensível que Assassins Creed: Unity não apareça a 1080p na Playstation 4. Se é uma realidade que outros factores poderão existir na Xbox One, nomeadamente o habitual problema da dimensão do framebuffer, reconhecendo a Ubisoft que os GPUs não estão saturados, e sabendo-se que a resolução não deveria ser dependente do CPU (esse sim saturado), torna-se pouco compreensível a situação.

Os reais motivos para tal ficarão sempre junto de quem programou o jogo. Mas as mais diversas teorias tem vindo a ser lançadas pelos jogadores! Já se falou de pagamentos para uma paridade entre as versões consola, mas tambem já se falou que os reais motivos se poderão prender com código específico da Nvidia presente no jogo e que não executa tão bem nas placas AMD.

Naturalmente nunca saberemos se tal é verdade, mas é uma realidade que Assassins Creed é um jogo patrocinado pela Nvidia e que possui efectivamente uma série de efeitos que poderão ser vistos exclusivamente nas placas Nvidia. Se há algo mais do que isso, não sabemos!

No entanto a Nvidia não é exactamente uma empresa que esteja livre de acusações das mais diversas. O acordo da nvidia com a Ubisoft envolve o pagamento de 5 milhões de dólares, e de acordo com a AMD, inclui especificamente alíneas que impedem que o código seja optimizado para outras placas. Assassins Creed V, não foi referido na altura destas notícias, mas é confirmado pela Nvidia como fazendo parte do acordo.



Ora o que a Nvidia refere que existe é apenas a inclusão de efeitos adicionais e melhorados para as suas placas e que as da concorrência terão de suportar nas versões mais tradicionais. E se fosse só isso, nada haveria a criticar.

No entanto, o passado mostra algo diferente. E para tal, vamos falar de uma outra parceria que em termos a Nvidia realizou. A equipa era a Crytek, e o jogo era… Crysis 2.

Supostamente neste jogo apenas teríamos as referidas melhorias específicas Nvidia… E efectivamente elas estavam lá! No entanto. propositadamente ou uma bug de todo o tamanho, as melhorias existentes prejudicavam claramente as placas da concorrência. E bug ou não o facto é que certos efeitos eram usados até à exaustão cortando as performances de todas as placas, mas particularmente as das placas da concorrência.

Vamos ver uma imagem de Crysis 2 no modo de detalhe máximo, o ULTRA:

NvidiaCrysys2-1

Quantos polígonos acreditam estão a ser usados para a criação do separador de betão, tipo New Jersey (nome dado em Portugal a estes separadores)?

50? 100? Não serão certamente muitos! Trata-se de uma forma simplista à base de linhas rectas!

Ficariam admirados se na realidade o separador fosse assim?

NvidiaCrysis2-2

Num outro ângulo:

NvidiaCrysis2-3



Sim, são milhares de polígonos. Não fazem parte da peça original que nunca foi concebida com tantos pois não precisava, mas é uma das optimizações da Nvidia. A Tesselização do DirectX 11 que consiste na criação pela placa gráfica de polígonos adicionais para dar maior perfeição às peças e que era uma das optimizações activadas no modo de detalhe máximo.

Aqui esta optimização é levada ao extremo, e ao exagero, mesmo em objectos que a dispensam. O motivo? Dá o que pensar! Bug ou caracteristica? Não sabemos! Consequencia: Abrandar as placas, particularmente as da concorrência! As placas Nvidia tinham perdas entre os 17 a 21% de performance, as AMD entre os 31 aos 38%.

Por bug ou por consequência do pagamento, sem dúvida que a situação era uma grande benesse para a Nvidia, especialmente porque era um pesadelo de performance para a concorrência!

Mas esta optimização não se ficou por aqui. Ela era aplicada a todos os objectos, incluindo no oceano. Aí as ondas ficavam muito perfeitinhas devido a tanto polígono que as definia!

Eis uma imagem de Crysis onde se vê o mar.

NvidiaCrysis2-4

E a tesselização aplicada à água.

NvidiaCrysis2-5

Humm… há algo estranho na imagem de cima. A água está a ocupar o ecrã todo, mas na realidade ela só está em certas partes da imagem.

Vamos ver uma imagem onde a água não é visível só para tirar a limpo.

NvidiaCrysis2-6

NvidiaCrysis2-7

Eh lá… mas o que é isto? Aparentemente a água está em todos os lados. Mesmo que seja transparente, ela está lá! E com milhares de polígonos obtidos por tesselização que estão a roubar processamento para nada. No entanto o jogo tem percepção de onde há água e onde não há. Como se explica então esta realidade?

Ah pois é! Foi a isto que se chegou! Como se não bastasse encher o cenário de polígonos que abrandavam ambas as placas, particularmente as da concorrência, ainda existe um oceano invisível com polígonos transparentes para se abrandar ainda mais!

Naturalmente ninguém pode dizer que a Nvidia pagou para isto acontecer! Ninguém tem provas! Agora o que se sabe é que o jogo foi patrocinado pela Nvidia, e que quando o jogo saiu estas situações prejudicaram as AMD. E estas duas situações são factuais! Há mesmo quem refira que o valor pago foram 2 milhões de dólares.

Daí que como gato escaldado de água fria tem medo, as suspeitas e receios sobre a possibilidade destas “bugs” voltarem a acontecer são reais. Como diz o ditado, “À mulher de César não baste ser séria, tem de parecer séria”, e com casos destes no passado como se impedir que as pessoas questionem as coisas?




Posts Relacionados