Nova proposta de implementação ao Vulkan promete melhorar a qualidade dos “frametimes” em jogos e outras aplicações que façam uso da API, assim reduzindo o “stuttering”.
O desenvolvedor contratado pela Valve, Keith Packard, tem feito várias contribuições para o Linux no desktop nos últimos tempos, tem trabalhado em um projeto que visa aprimorar a qualidade dos “frametimes” em aplicações que façam uso da API Vulkan.
Esse novo projeto consiste na criação de uma nova extensão para o Vulkan a fim de substituir a atualmente utilizada “VK_GOOGLE_display_timing” (de agora em diante denominada “VGDT”), que até o momento é responsável pelo gerenciamento dos “frame/display timings” em aplicações rodando sob o Vulkan.
Segundo Keith, a VGDT possui deficiências quanto aos controles e flexibilidade da extensão, sobre as quais ele explica (em tradução livre):
“Imagine que a aplicação está tentando renderizar a metade da taxa de quadros nativa. Utilizando a VGDT, a mesma seta o tempo de exibição de cada quadro separando-os com o dobro do tempo da taxa de atualização nativa. Quando um quadro não consegue atingir o seu tempo de exibição correto e é exibido um “frame time” atrasado, o mesmo acaba sobrepondo, e sendo exibido ao mesmo tempo do frame subsequente, que por sua vez está sendo exibido no tempo correto. A consequência disso é a exibição de um “glitch”, também conhecido como “stuttering”.”
“Trocando em miúdos”, o que Keith disse é que a forma com que a VGDT faz o seu trabalho possui uma tendência a exibir “stutterings”. Com isso ele está propondo uma nova extensão chamada “VK_MESA_present_period”, que promete melhorar a qualidade dos “frametimes” corrigindo a forma com que cada frame é exibido.
Atualmente a VGDT controla quando cada frame deve ser exibido. A ideia de Keith é que a sua nova extensão possa fazer um melhor trabalho, controlando também por quanto tempo cada frame será exibido, assim não permitindo que um frame se sobrepunha ao outro, o que deve garantir uma exibição mais “lisa”, uma vez que os quadros serão exibidos de uma forma mais organizada, minimizando o feedback visual mesmo quando erros ocorrerem.
Por fim, “stuttering” é um problema que estou tendo em vários jogos há bastante tempo, desde que comecei a jogar no Linux. Muitas vezes o jogo roda com uma taxa de quadros excelente, mas o “stuttering” acaba me fazendo optar por utilizar o Windows para rodar aquele game. É muito bom ver que atitudes estão sendo tomadas para corrigir especificamente esse problema. Agora é só esperar, e assim que for divulgada uma data para podermos testar essas novidades, certamente informarei aqui no blog Diolinux!
Você tem sofrido com os temíveis “stutterings” ao jogar no Linux? O quê acha da nova solução proposta? Conte-nos a sua opinião nos comentários abaixo!
O post original feito por Keith Packard pode ser encontrado aqui.
Você gosta de Linux e tecnologia? Tem alguma dúvida ou problema que não consegue resolver? Venha fazer parte da nossa comunidade no fórum Diolinux Plus!
Isso é tudo pessoal! 😉