Tentei resolver o debate mais idiota em jogos para PC
Sem borda ou em tela cheia? É uma pergunta que todo jogador de PC enfrenta, seja por curiosidade ou por amigos que tentam obter as melhores configurações para seus jogos de PC. Seguir conselhos superficiais, como o que apresentamos em nosso guia simples sobre jogos sem bordas versus jogos em tela cheia , irá colocá-lo no caminho certo. Borderless é mais conveniente, mas pode levar à queda de desempenho em alguns jogos. Em teoria, isso é tudo que você precisa saber. Mas a questão que atormenta minha existência ainda soa: Por quê?
Se você pesquisar on-line, receberá conselhos totalmente diferentes sobre se a tela sem borda ou em tela cheia é melhor para o seu desempenho. Alguns dizem que não há diferença. Outros afirmam grandes melhorias com o modo de tela cheia em jogos como PlayerUnkown’s Battlegrounds. Mais ainda dizem que você obterá melhor desempenho com borderless em um jogo como Fallout 4. Você não precisa seguir este conselho, e provavelmente não deveria de uma forma mais universal, mas por que existem tantas afirmações diferentes sobre o que deveria ser uma das configurações mais simples em um menu gráfico?
Eu queria descobrir e com certeza tentei. O que começou como uma dissecação baseada em dados de jogos sem bordas e em tela cheia, no entanto, rapidamente se transformou em um projeto de pesquisa sobre como as imagens aparecem na tela. Este não é um debate ou mesmo um tópico que vale a pena discutir em 2024 se você proverbialmente (ou literalmente) tocar na grama, mas se você fechar as cortinas por alguns minutos, vou guiá-lo por um caminho denso e extremamente nerd de como os jogos aparecem na tela.
Mostrando meu trabalho
Eu tentei testar jogos. Eu realmente fiz. Meu plano original para este artigo era analisar tantos jogos modernos quanto possível – que foram lançados nos últimos cinco anos e compará-los no modo de tela cheia e no modo sem bordas. Executei cinco passagens de cada jogo para cada modo de exibição, na esperança de obter uma média que mostrasse até mesmo pequenas diferenças de desempenho. Eles simplesmente não estavam lá.
Você pode ver alguns jogos que fiz acima. Planejei testar muito mais, mas corrida após corrida, jogo após jogo, continuei vendo exatamente os mesmos resultados. Talvez existam alguns jogos como PlayerUnknown's Battlegrounds e Fallout 4 onde há uma diferença, mas se eu não consegui encontrar uma pequena diferença em grandes jogos como Horizon Zero Dawn e Red Dead Redemption 2, é difícil dizer que há um tendência consistente.
A única exceção foi Hitman 3. Não é uma diferença enorme, mas é mensurável. Hitman 3 é uma raridade nos jogos que testei – também executei uma vez em Black Myth: Wukong e Returnal sem qualquer diferença no desempenho – mas isso não é apenas porque há uma diferença de desempenho. Ao contrário dos outros jogos que testei, Hitman 3 não possui uma opção sem bordas. Em vez disso, possui uma opção de tela cheia e uma opção exclusiva de tela cheia.
Essa diferença na nomenclatura significa muito e é algo a que a maioria dos jogos não presta atenção.
O que significa tela cheia
Você provavelmente não sabe o que “tela cheia” realmente significa em seus jogos. Posso dizer isso com confiança também, porque há uma boa chance de que o jogo em si não seja claro sobre o que significa tela cheia. Nos anos anteriores, a configuração de tela cheia se referia a tela cheia exclusiva . Isso significa que o adaptador de vídeo – sua placa gráfica – tem controle total da tela. Se você iniciar um jogo antigo e alternar para o modo de tela cheia, verá a tela ficar em branco por alguns segundos. Essa é a sua placa gráfica assumindo o controle.
Se você não estiver executando um aplicativo exclusivo de tela inteira, sua exibição será controlada pelo Desktop Window Manager , ou DWM, no Windows. Foi introduzido pela primeira vez no Windows Vista como uma forma de habilitar os recursos Aero nesse sistema operacional. É um serviço de composição de desktop, onde a tela inteira é renderizada (ou desenhada) para um local da memória antes de ser exibida na tela. Anteriormente, as janelas eram desenhadas diretamente na tela.
A sabedoria tradicional em torno de jogos em tela cheia e sem bordas volta ao DWM. A ideia é que, no modo borderless, você tenha que gastar uma certa quantidade de recursos em DWM, mesmo que o jogo esteja ocupando toda a sua tela. Para garantir o melhor desempenho, você deseja executar no modo de tela cheia, ignorando totalmente o DWM e qualquer perda potencial de desempenho que ele possa trazer.
Existem dois problemas com essa sabedoria em 2024. O primeiro é que os jogos não são consistentes sobre o que tela cheia e sem bordas realmente significam. Jogos como Horizon Zero Dawn, por exemplo, não utilizam modo exclusivo de tela cheia, apesar de oferecerem opções sem borda e tela cheia. E jogos mais recentes, como Black Myth: Wukong, não têm nenhuma opção de tela cheia. Há uma razão pela qual Hitman 3 mostrou uma diferença de desempenho – ele tem um modo de tela cheia exclusivo.
A segunda questão é mais complexa e tem a ver com a forma como as imagens realmente aparecem na tela. O DWM poderia representar uma perda de desempenho no passado, mas hoje é um pouco mais inteligente do que isso.
Invertendo quadros
Com o lançamento do Windows 8, a Microsoft introduziu o modelo de apresentação flip DXGI. DXGI é a infraestrutura gráfica DirectX e é um componente de uma longa pilha de middleware entre o jogo e a placa gráfica. O modelo de apresentação flip, segundo documentação da própria Microsoft , “reduz a carga de recursos do sistema e aumenta o desempenho”. A ideia é “inverter” um quadro renderizado na tela em vez de copiá-lo de um local da memória.
Vamos voltar por um momento. Na renderização gráfica, existe algo conhecido como cadeia de troca . Os gráficos são renderizados em um buffer traseiro e, em seguida, esse buffer é exibido na tela. Imagine um bloco de notas adesivas. Há uma imagem sendo desenhada no post-it abaixo do topo. Quando terminar, a nota frontal sairá do caminho, exibindo o que está por baixo. É assim que funciona uma cadeia de troca.
Ele também pode virar instantaneamente. Quando sua placa gráfica exibe um quadro, ela mostra o que é conhecido como buffer frontal. Esta imagem tem um ponteiro anexado a ela. O buffer traseiro está sendo retirado da tela. Quando o quadro estiver pronto, tudo o que é necessário é uma mudança de ponteiro. Em vez de apontar para o buffer frontal, estamos apontando para o buffer traseiro, que por sua vez se torna o novo buffer frontal. O antigo buffer frontal (agora o buffer traseiro) é usado para renderizar o próximo quadro, e eles vão e voltam. Você pode ter uma série mais complexa desses buffers, mas é assim que a cadeia de troca funciona em alto nível.
É importante entender o que significa uma inversão porque é a mudança crítica que o Windows 8 fez para renderizar jogos sem fronteiras. Antes do modelo de apresentação flip, o DWM usava uma transferência de blocos de bits. Isso exigia a cópia do buffer traseiro para o DWM, onde seria composto na tela. O modelo flip permite que o DWM veja um ponteiro para um quadro. Quando o próximo quadro precisa ser composto, tudo o que é necessário é uma mudança de ponteiro, assim como na cadeia de troca. Você evita uma operação de leitura e gravação.
Essa mudança mudou a forma como os jogos realmente funcionam no Windows. Agora, a maioria dos jogos, mesmo rodando em modo tela cheia, ainda serão compostos com DWM. Ele permite que você saia rapidamente dos jogos com Alt + Tab e garante que as sobreposições funcionem corretamente. Especialmente para jogos mais antigos, você verá alguns conselhos para “desativar as otimizações de tela cheia”, que estão integradas no Windows para dar à placa gráfica controle total sobre a exibição, caso surja algum problema.
Resolvendo um debate que não importa
Antes do modelo de apresentação flip, havia um argumento de que a tela cheia exclusiva era o caminho a seguir para obter o melhor desempenho, mesmo que essa vantagem de desempenho fosse pequena. Hoje, isso realmente não importa. É possível que você encontre um jogo específico – especialmente se for mais antigo – onde há uma diferença de desempenho. Ou pode ser necessário desativar as otimizações de tela inteira para corrigir problemas de desempenho, dependendo da sua configuração. Mas quando se trata de escolher sem borda ou tela cheia, você pode escolher o que seu coração desejar.
Talvez essa devesse ser uma resposta decepcionante, dada a toca do coelho que esse tópico me enviou, mas realmente não é. Acrescenta nuances à discussão e preenche as lacunas deixadas por décadas de postagens em fóruns dançando em torno do debate sem fronteiras, sem nunca acertá-lo na cabeça. No mínimo, agora posso simplesmente continuar com o modo sem bordas, sem nunca me perguntar se estou deixando o desempenho de lado.