Duvida sobre OPENGL x Vulkan

Eu tenho uma duvida frequente que pode ser um tanto boba,mas queria uma explicação

Porque a API open GL é lenta
comparada as Direct X ea Vulkan

Existe alguma forma de deixar o open gl com o mesmo nivel de desempenho das duas citadas a cima

2 curtidas

Bom, se vc levar em conta que o desenvolvimento do OGL foi dropado, por conta do Vulkan, em 2016 e que última versão estável é de 2017, não tem como comparar na verdade.

Os hardwares evoluíram muito nos últimos anos, o OGL simplesmente não consegue tirar proveito disso.

1 curtida

Opengl não é necessariamente lenta, mas o opengl não é Moderno

Opengl foi criado em 1992, para o hardware da epoca, da mesma forma como x11, foi sendo adaptado e concertado para continuar funcionando.

O vulkan foi criado em 2016, se comunica de forma muito mais direta com as placas de video e o hardware, por isso os desenvolvedores conseguem extrair o maximo das placas de video e processadores.

Mas alguns jogos bem pesados rodam relativamente bem com Opengl

Teardown, doom(sim tem fallback pra opengl)
Mas opengl é uma API que não vai receber as novas features de hardware, FSR, Ray tracing, DLSS, essas coisas são exclusivas do DX12S e do Vulkan.

Não tem motivo para manter o opengl, exeto para rodar jogos antigos e compatibilidade. Vulkan é super maduro, consegue fazer muito mais, e muito melhor que opengl.

4 curtidas

tenho um hardware que so tem open gl e queria aproveitar ele

Para hardware com opengl você vai ficar dependente de softwares que estão legados ainda, ou que tem suporte a esse tipo de dispositivo, talvez permanecer no x11 e etc.

Alguns emuladores, jogos mais antigos(nativos), mas rodar proton é impossível por exemplo

1 curtida

@Cauan_Soares_vitalin Use o Wine, e passe para o Wine utilizar o OpenGL como API gráfica.
O Proton tmb tem suporte ao OpenGL a diferença é que o Protron é preciso que vc habilite o OpenGL, já o Wine usa por agora e não sei ate quando, utiliza opengl por padrão sem que o usuário tenha que habilitar.
Jogos que tentar rodar no Wine mais que não suportam directx mas suportem vulkan e apenas vulkan, não terá como vc rodar no Wine, isso porque o wine não traduz chamadas do Vulkan para o Wine.

Jogos antigos que usam o opengl como opção ou aqueles abandonados que sempre usavam opengl vc não precisa fazer nada.

O Proton aceita fazer tradução de chamadas de directx para opengl, basta habilitar com um parâmetro que pode ser encontrado na internet.
Da para fazer essa modificação tmb usando o protontricks.

Se você quiser alterar a configuração de tempo de execução para um jogo específico, você pode usar a configuração Set Launch Options na caixa de diálogo Properties do jogo no cliente Steam. Defina a variável, seguida por %command%. Por exemplo, insira

PROTON_USE_WINED3D=1 %command%

para usar o renderizador wined3d baseado em OpenGL em vez do renderizador DXVK baseado em Vulkan.

Roda doom2016 em opengl, depois me diz que é lento…rs antes do proton era basicamente jogos opengl, grid autosport é outro game que tenho acho que umas 200hrs dele em opengl. Mas como falaram, vulkan oferece vantagens tecnicas em relação a hardwares modernos, como: mais controle sobre a gpu, eficiencia multithreading, menor overhead etc…

Sistemas operacionais como Ubuntu e seus sabores não vem com a API Vulkan instalada durante a instalação, vc precisa instala-lo a parte, não é esse o seu caso?

Por essa eu não esperava.
Isso explica o motivo do meu peppermintOS não rodar jogos da steam via vulkan diretamente pois tenho sempre que usar o comando para forçar a inicialização do proton em OpenGL mas mesmo assim eu estou confuso, esses dias eu joguei a demo de “echoes of the living” jogo baseado em RE e Silent Hill, o jogo rodou direto via vulkan sem modificações, como isso é possível ?