GamesSistemas operacionais

Como Vulkan ICD Loader pode te trazer gráficos melhores nos games no Linux

Esse é um daqueles experimentos que vale a pena fazer de vez em quando. Vulkan é uma tecnologia nova e sempre temos coisas novas a aprender sobre ele, e muitas vezes pequenos detalhes podem fazer a diferença.  

Todas as noites, de Segunda à Sexta, à partir das 20 horas, eu faço lives no canal Diolinux na Twitch, (siga-nos por lá também, inclusive), e costumeiramente jogamos Overwatch no Linux, um game da Blizzard, que não possui uma versão nativa, mas graças ao Wine, ao DXVK e ao Lutris, roda tão bem quanto.  

Em algum momento durante uma das lives dessa semana, alguém tinha mencionado sobre ativar uma função nas configurações do Lutris chamada “Vulkan ICD Loader”, selecionando o fabricante da minha placa de vídeo para ter “melhor desempenho”, ou algo assim.  

O que eu aprendi sobre isso?

Eu nunca reclamei do desempenho do Overtwatch no Linux, sempre funcionou muito bem na minha experiência, e a gente que sempre conversa sobre esse tipo de coisa nas lives, mas, como bom nerd/gamer/geek, resolvi testar hoje a opção que foi sugerida e acabei não sentindo diferença alguma no desempenho do Overwatch, mas, a menos que meus olhos tenham me traído, eu vi sim um melhora nas sombras e na iluminação do jogo:  

Vulkan ICD Loader

McCree é o meu personagem favorito do game, na imagem acima estamos com ele no campo de treinamento, com o gráfico do Overwatch no Ultra, rodando no Linux à cerca de 200 FPS numa RTX 2060, onde o sistema operacional é o Ubuntu 19.04 e o Driver Nvidia é o 430.x.  

É perceptível o quanto a “luz do sol” fica mais natural, assim como os reflexos ficam mais vivos nas partes onde o Vulkan ICD Loader está ligado, contrastando com as faixas onde ele está “OFF”.  

Com ele ativado, apesar da mudança não ser nada drástica, pois o game já rodava “bonitamente” no Linux sem essa opção ativada, o gráfico ficou um pouco mais próximo do que eu vi as pessoas visualizarem ao jogarem o game da Blizzard em um console, como o PS4.  

Curiosamente, vi que algumas pessoas que testaram Linux pela primeira vez porque ficaram sabendo que o Overwatch rodava, comentaram que o gráfico “parecia diferente”, de alguma forma, mesmo que não soubessem explicar exatamente do que se tratava, e talvez seja exatamente essa questão, a forma com que a renderização da iluminação via Vulkan (DXVK) seja feita neste caso em específico.   

É no mínimo muito interessante.  

E como ativa essa função Vulkan ICD Loader?

Antes de mais nada, do que realmente se trata essa tecnologia?  

Você consegue dar uma olhada no código do Vulkan IDC Loader no GitHub, onde podemos aprender que o Vulkan suporta sistemas com várias GPUs, cada qual rodando um driver diferente, ou ICD (Installable Client Driver).  

O ICD Loader é uma biblioteca colocada entre uma aplicação Vulkan e qualquer número de drivers de vídeo que o suportem, o loader também gerencia a inserção de camadas de bibliotecas Vulkan, como camadas de validação entre uma aplicação e um driver.  

Explicações técnicas à parte, é muito simples ativar isso no Lutris, eu vou demonstrar com o Overwatch, mas supostamente você pode usar o mesmo recurso em qualquer game.  

No Lutris, clique no game e depois clique na engrenagem que vai abrir a janela de configurações.  

configura%25C3%25A7%25C3%25B5es%2Bdo%2Blutris

Na janela que se abrir, navegue até a aba “System options”, dentre as configurações disponíveis você deverá encontrar o “Vulkan ICD Loader”, que geralmente estará em “None (default)”.  

configura%25C3%25A7%25C3%25B5es%2Blutris%2Bdo%2Bvulkan

Altere de acordo com a sua placa de vídeo, Intel, Radeon(AMD) ou Nvidia e salve, clicando no botão “Save”, logo abaixo.  

Agora basta iniciar o jogo novamente, atente-se para o detalhe de que possivelmente será necessário que os shaders sejam compilados novamente, então nos primeiros instantes o FPS deve ficar baixo, basta “não fazer nada” e esperar que o processo ocorra em background antes de se aventurar em algum game competitivo. O tempo de demora de compilação dos Shaders deve variar de máquina para máquina, dependendo da potência do hardware, geralmente leva cerca de 30 segundos para mim.  

Caso queira desfazer a modificação por não ter gostado do resultado ou algo assim, basta voltar nas mesmas opções e alterar para o padrão (default).  

Vou começar a jogar na próxima live com essa configuração ativada, então vai ser interessante ver como se comporta e se o público também consegue ver melhorias nos gráficos.  

Quer compartilhar também as suas experiências jogando no Linux? Participe do nosso fórum.  

Até a próxima!


Viu algum erro ou gostaria de adicionar alguma sugestão a essa matéria? Colabore, clique aqui.

Diolinux Ofertas - Aproveite os melhores descontos em diversos produtos!