Eu tenho um Laptop Lenovo ideapad 330-15IKB. Ele tem um processador Intel Core i3-7020U, 8 GB RAM e um iGPU Intel UHD Graphics 620. Ele também tem um SSD de 120 GB instalado adicionalmente ao HDD de 1 TB.
Um jogo que eu gosto bastante é o StarCraft 2. Nele, performance é muito mais desejável do que gráficos mas ele roda até que bem pelo Wine, por isso que eu sempre colocava os gráficos no mínimo para jogar pelo Wine mas mesmo assim não é o suficiente para ter uma performance apropriada. No entando, nesse laptop também tem o Windows 10 Professional instalado em dual boot e ativado com uma licensa digital, então não é pirataria e nem o StarCraft 2 é pirata.
Eu notei que o StarCraft 2 funciona muito melhor no próprio Windows, permitindo até colocar os gráficos no médio e ter uma boa performance, contra jogar no Wine e não ter performance o suficiente com os gráficos no mínimo. Seria isso uma limitação de como o Wine funciona ou existe alguma configuração que pode ser feita no Wine para priorizar performance?
A maioria dos jogos rodando através do Wine sofrem uma ligeira perda de desempenho. Em alguns, a perda pode ser bem significativa. Em outros, o desempenho é similar ou mesmo superior ao Windows. Então varia muito de jogo para jogo.
Você esta usando o Wine crú ou esta usando um frontend junto tipo um “Lutris, PlayOnLinux, etc”?
Se for o Wine somente também da para passar a usar OpenGL ao envés do Direct3D.
Também da para usar o Vulkan só que esse eu não sei configurar.
É cru mesmo. PlayOnLinux, em minha experiência, mais atrapalhou do que ajudou. E o Lutris muitas vezes força o uso do DXVK, que até hoje não consegui configurar. Uma vez tentei rodar The Sims 4 usando DXVK mas o jogo acusou a “placa de vídeo” de não ser compatível. Usando o WineD3D, isso não acontece. E como se trata de StarCraft 2, um jogo classificado Platina no WineHQ, não fiz configuração extra para rodar o jogo. Só instalei.
Configura o registro do prefix Wine assim.
Ai ele vai traduzir do Direct3D para OpenGL.
O que não existir você cria.
Pode configurar a sua memoria da GPU se quiser é aquele tal de drawrender.
Mas para usar OpenGL é mesmo esse que esta marcado.
O vídeo integrado do seu processador tem suporte a Vulkan.
Acredito que vale a pena tentar forçar o uso do Proton através da Steam (o client permite a utilização do recurso para jogos externos, bastando criar o atalho).
É o openSUSE Tumbleweed. Eu dei uma lida e depois fui pesquisar se existe alguma otimização para o StarCraft 2 em sí e eu descobri uma coisa. A queda de performance existe por causa do Direct3D. O StarCraft não tem versão em OpenGL e precisa passar por conversão para funcionar no Wine. Por isso que há queda de performance. Agora como é convertido para o WineD3D, pode ser que essa seja a causa da queda de performance. Não sei se com DXVK resolve. As últimas vezes que tentei com DXVK, eu recebi aquele erro lá e perdi um Wineprefix só tentando voltar para WineD3D.
Nunca tentei pelo terminal. Mas sei que, em Vulkan, o desempenho tende a ser superior. O Proton já vem ajustado e aprimorado para extrair o máximo do DXVK e evitar problemas de compatibilidade.
Primeiro vou testar com o Wine padrão. Eu gosto dessa facilidade de apenas instalar e usar. Eu creio que o Wine não foi feito para ser complicado. Se essas otimizações para Proton virassem upstream, ficaria muito melhor e muita gente aproveitaria. Mas se não funcionar aqui com o Wine, vou criar o atalho no client do Steam. Prefiro não fazer por enquanto porque teria de fazer login tudo de novo, provavelmente baixar os mapas tudo de novo e eu quero evitar isso.
GPU intel precisa de instalar os pacotes Vulkan separadamente do Mesa3D.
Pelo menos é assim no Ubuntu.
E o negocio é instalar o d3dx9 que o Steve passou.
Você pode ver isso aque
Vá em “tests results”