Apesar de ambas ostentarem nas caixas a capacidade de apresentarem imagens a 4K, o resultado final é bem diferente.
Quando do lançamento da Xbox One e da Playstation 4, o chamado “resolution gate” arrebentou. A PS4 possuía jogos a 1080p e que apenas corriam a 720p na Xbox One. Uma diferença que passava acima do esperado face às performances teóricas das consolas.
Com a polêmica a percorrer os fóruns de internet, e questionado sobre o assunto, a Microsoft resolveu deitar água na fervura, e Aaron Greenberg teve uma frase que se tornou célebre, e que foi discutida aqui na PCManias:
@PNF4LYFE You realize you will see every game in 1080p as your output right?
— Aaron Greenberg (@aarongreenberg) November 1, 2013
Aaron Greenberg referia-se ao facto de que a Xbox One, quando ligada a uma TV 1080p era capaz de re-escalar a imagem para essa mesma resolução. No entanto, essa era uma verdade de La Palice. É que, independentemente de tal, a diferença de resoluções era notória. E isso porque a interpolação linear, bi-linear ou bi-cúbica, que é feita por estes chips de re-escalamento limitam-se a calcular cores para os pixeis a mais que ocuparão o espaço entre os existentes e efectivamente cálculados pelo jogo, baseando-se na média de cores dos pixels circundantes. Mas na prática não acrescentam definição à imagem. E isso quer dizer que o detalhe que não se consegue colocar numa imagem a 720p, mas que é visível numa a 1080p, não pode nunca ser acrescentado por este tipo de re-escalamento.
Basicamente um jogo 720p ou 900p, mesmo que re-escalado para 1080p manterá a mesma definição de detalhe de um jogo 720p ou 900p. É basicamente o que obtemos com o Photoshop se passarmos uma imagem de 72op para 1080p. Há mais pixels, mas não mais detalhe. Aliás já fizemos aqui na PCManias alguns artigos sobre esse assunto.
E essa situação aplica-se igualmente à Xbox One S onde os jogos, sejam eles 720p, 900p, ou 1080p, quando re-escalados para 4K manterão sempre a definição de imagem associada à sua resolução nativa. Aliás, a 4K, mesmo com uma imagem base a 1080p, o número de pixels com cor calculada com base na média de cor dos circundantes acaba por ser 4x superior aos pixels efectivamente calculados, o que significa que estamos a ver mais pixels interpolados do que aqueles que são efetivamente calculados.
No entanto não se pode negar que existe sempre um aumento de qualidade de imagem com um re-escalamento, mas com este método baseado apenas no cálculo de cor, nunca tal se equivale ao obtido com resolução nativa. E esse é o motivo pelo qual um jogo 900p da Xbox One, mesmo re-escalado, apresenta diferenças visuais face a um 1080p na PS4. E isto apesar que o re-escalamento aproxima um pouco mais as duas realidades face ao que seria se o re-escalamento não existisse.
No entanto há problemas adicionais. Por exemplo, comparativamente, a Xbox One original não consegue reproduzir a 4K 30 fps, pelo que qualquer re-escalamento acima dos 1080p (em TVs 4K) terá de ser feito pelo próprio televisor!
Ora uma TV normalmente não faz este re-escalamento com a mesma qualidade da consola. Mas mesmo que o faça, ao re-escalar para 4K uma imagem já re-escalada para 1080p está a acrescentar o cálculo de pixels interpolados de forma simples (apenas cor) a espaços existentes entre pixels já interpolados de forma simples. Basicamente é “erro”… sobre “erro”!
Esse é o motivo pelo qual uma Xbox One S, ao não ter a limitação da original, quando ligada a uma TV 4K, apresenta uma melhor qualidade de imagem do que uma Xbox One standard. Porque o “erro” sobre “erro” desaparece ao ser a consola a re-escalar diretamente para 4k! Mas no entanto o que continuamos a ver é uma imagem com a resolução nativa e onde tudo o resto se limita a ser calculado por interpolação da cor dos pixels adicionais existentes entre os efetivamente calculados pelo jogo.
A solução da Sony apresentada na PS4 Pro é no entanto bem mais complexa! E o calculado acaba por obter não só a estimativa de cores, mas igualmente do detalhe que ali deveria existir e que a resolução mais baixa não apresenta. Basicamente, aqui não há apenas um re-escalamento, mas uma reconstrução da imagem nativa.
Para começar convêm esclarecer que, ao contrário da Xbox One S, a PS4 Pro possui capacidade gráfica para apresentar jogos PS4 em 4K nativos. Não são todos, mas jogos que corram a 60 fps na PS4 podem, caso corram a 30 fps aparecer a 4K na Pro.
Basicamente a potência da Pro é 2,3 x superior à da PS4, o que quer dizer que lidar com resoluções duplas às da PS4 é algo que ela é capaz. E daí para a frente as contas são simples. Diminuam um jogo de 60 fps para 30 fps e libertam igualmente metade dos requisitos. E com as duas coisas juntas(2+2), os 4K, ou 4x1080p, são uma realidade!
Daí que os 4K nativos são uma realidade nesta consola, e algo não disponível na Xbox One S!
Mas depois há os outros casos! Aqueles casos que sempre foram referidos na PCManias como os mais dificeis de converter (antes de sabermos do uso desta metodologia), os jogos que correndo já a 30 fps na PS4 não podem receber cortes nos fotogramas e onde a performance gráfica adicional não chega para o cálculo de uma resolução 4x superior. E aí teremos de recorrer igualmente a interpolação.
A questão é que os processos usados pela PS4 são radicalmente superiores aos da interpolação simples de cor usada na S com o auxílio do seu chip de re-escalamento. Aqui usam-se metodologias de reprojecção temporal que permitem que o pixel calculado tenha não só em conta a cor dos adjacentes mas, e acima de tudo, a cor e o detalhe daquilo que efetivamente deveria estar lá.
Ora metodologias destas há bastantes. Quantum Break apresentou uma, e Killzone Shadow Fall, na componente multi jogador, apresentou outra mais complexa (Sim, apesar de cronologicamente Killzone Shadow Fall ser mais antigo, a sua metodologia era mais avançada – Podem ler sobre isso num artigo da PCManias anterior e que está aqui.)!
A versão usada em Quantum Break era interessante, partindo de quatro fotogramas a 720p para reconstruir uma imagem de 1080p, mas infelizmente, devido ao uso total de imagens com menor resolução e onde nenhuma tinha pelo menos 50% da resolução final, tinha como consequência uma imagem com a nitidez afectada, onde a sensação era clara de que não estávamos na resolução indicada, e acima de tudo apresentando tremendos efeitos de Ghosting.
Já a metodologia do modo multijogador de KillZone Shadowfall, que até foi pioneiro no uso da mesma, era mais complexa, e entre outras coisas usava duas imagens com metade da resolução dos 1080p (960*1080), bem como uma terceira com a resolução total. Ao trabalhar com algo que permitia detectar com maior exatidão o conteúdo de cada pixel (vectores de movimento e um fotograma a 1080p), o resultado era bem mais convincente do que Quantum Break, tendo inclusive demorado meses para ser detectado e passado durante muito tempo como 1080p reais.
No entanto, o efeito de Ghosting, apesar de menor, ainda estava presente.
Ambas as metodologias usadas por estes jogos analisavam os pixels prevendo o movimento, e reconstruíam a imagem final na resolução pretendida usando essa informação para reconstruir o detalhe perdido com a menor resolução
A solução final da Sony para a PS4 Pro aproxima-se mais da solução de Killzone Shadowfall do que da solução usada em Quantum Break, sendo tremendamente inteligente na forma como funciona, e com resultados bastante superiores. É uma metodologia em padrão de xadrez desenvolvida em parte para o VR e já usada (mas com 1/4 da resolução como base) pela Ubisoft em Rainbow Six Siege.
Em Killzone Shadow Fall a imagem era, como referido, reconstruída baseada em duas imagens com uma resolução de 960*1080. Mas na prática a imagem era 1080p! O que acontecia era que cada uma das imagens apenas continha metade da informação. Uma possuía as colunas pares e a outra as impares, com o espaço restante incompleto. Mas quando sobrepostas, ambas criavam aquilo que efetivamente era uma imagem a 1080p real. A diferença estava que, devido aos movimentos, e o tempo passado entre o cálculo dos dois fotogramas, os pixels não se apresentavam já no local devido e era aí que entrava o terceiro fotograma e os vectores de movimentos que permitiam efetuar a correção na imagem.
O que tínhamos era então isto (imagem original à esquerda, uma das imagens com metade da resolução útil calculada em colunas no centro, e recriação do fotograma original à direita):
Para criarmos a imagem da esquerda (nativa), usávamos duas imagens com apenas metade da informação presente em colunas, para um resultado como o que está à direita!
E apesar de tudo parecer perfeito, havia um problema claro. O aliasing era notório demais para a resolução em causa e em nada se aproximando do existente na resolução nativa. Eis um zoom do resultado final em comparação com o caso nativo.
Bastante diferente certo?
Claro que em movimento, e sendo a situação causada por interpolação vertical e não horizontal como é habitual, apesar desta diferença visual notória, a situação era difícil de detectar. E daí que tal tenha passado em Killzone Shadowfall por mau AA e não por alteração à resolução nativa durante o jogo, tendo a técnica demorado bastantes meses a ser detectada como não sendo 1080p nativos, mesmo junto de peritos na contagem de pixels. Aliás aqui na PCManias defendemos que a resolução do jogo era efectivamente 1080, pois apesar da metodologia de cálculo ser simplificada, o frame buffer calculado era 1080p.
Apenas como explicação adicional sobre Quantum Break, a metodologia base era semelhante, apesar de agnóstica à geometria (que se mantinha a 720p, algo que não acontece em Killzone Shadow Fall – ler o artigo acima linkado), mas criada com imagens com menos de 1/2 da resolução, pelo que a metodologia não era suficiente para a reconstrução do frame buffer 1080p requerendo iterações adicionais. Os resultados a nível de qualidade de imagem eram por isso bastante mais fracos que os de Killzone Shadow Fall (as imagens de baixo podem ser abertas numa nova guia a 1920*1080 mostrando a diferença na definição global e nitidez do detalhe).
Mas a nova metodologia da Sony para os 4K da PS4 Pro é semelhante ao que se fez em Killzone Shadowfall, apesar de a técnica de sobreposição ser diferente e estreada pela primeira vez em Rainbow Six Siege (e refere-se mais uma vez que este jogo usou a técnica mas com fotogramas base com 1/4 da resolução e não 1/2 da resolução como se faz aqui à semelhança do caso de Killzone). E é ela que permite eliminar todos estes problemas acima referidos!
Assim face ao caso de cima, em vez de a informação estar em falta em colunas, ela está em falta num padrão de tabuleiro de xadrez. Isso quer dizer que temos duas imagens a 4K, onde estão em falta pixels alternados com uma das imagens a calcular os pixels em falta na outra. E isso quer dizer que cada imagem 4K na prática só calculou metade da resolução que se quer atingir (neste caso o dobro dos pixels dos tradicionais 1080p). Tal e qual o caso de cima, mas com uma distribuição de pixels bem diferentes!
A imagem de cima ilustra o caso, mostrando a verde os pixels calculados por uma imagem, e vermelho os da outra. Cada imagem acaba por ter metade da resolução dos 4K, e se sobrepostas criam um fotograma 4K completo.
Agora, cada uma das imagens aplica um MSAA 2X, numa técnica bem semelhante à explicada por Sebbbi da Redlinx para o sua metodologia de aplicação de um MSAA com qualidade 8x, mas com menor uso de recursos, e sobre o qual já tambem falamos na PCManias. Esse MSAA calcula uma cor para o pixel anteriormente vazio baseado nos restantes pixéis calculados, criando um fotograma completo
Fazendo isso em ambas as imagens e agora sobrepondo-as, aplicando igualmente os anteriormente referidos vectores de movimento que permitem à imagem presumir o que efetivamente ali deveria existir, o resultado é bastante mais perfeito que o anterior. Vejamos os resultados para este caso:
Vamos agora ver o Zoom!
Esta metodologia não cria os mesmos problemas com o Aliasing e elimina o efeito de ghosting, permitindo um resultado final muito semelhante ao nativo. Basicamente as diferenças face ao nativo dada a elevada densidade de pixels, com consequente diminuta dimensão de cada pixel no ecrã não são verdadeiramente algo que chame notoriamente à atenção (a imagem que se segue é 4K e obtida com a PS4 Pro. Abram-na num novo separador e façam zoom para perceberem a qualidade do resultado final obtido).
Esta metodologia, implementada no hardware da consola e feita a custo zero, tem vindo a ser aplaudida por vários programadores que defendem que ela se revela o ideal para as consolas, recomendando que a Microsoft use o mesmo na Scorpio, de forma a conservar performance para outras situações gráficas. Caso contrário a Scorpio usará a sua performance gráfica para cálculo nativo com um resultado muito pouco superior ao apresentado pela PS4 Pro, não se destacando assim, graficamente, verdadeiramente desta!