Rodando Godot GDScript e CSharp no Xorg com Placas Intel

🤖 Se você tiver com esse mesmo problema, tente essas configurações!


Rodando Godot GDScript e CSharp no Xorg com Placas Intel


Eu costumo usar gerenciadores de janelas na minha máquina porque consomem menos recursos do computador: memória, processamento,… E com isso melhora o desempenho.

Mas, eu tinha um problemas relacionado a Tearing(a tela ficava “cortando ao meio”), principalmente quando fazia screencast.

Então, eu resolvi esse problema criando um arquivo de configuração em /etc/X11/xorg.conf.d/20-intel.conf e inserindo o conteúdo abaixo:

Section "Device"
    Identifier  "Intel Graphics"
    Driver      "intel"
    Option      "AccelMethod"    "sna"
    Option      "DRI"          "2"
    Option     	"TearFree"     "true" 
EndSection

No entanto, um dia eu decidi instalar o Godot CSharp e ao abrir, ou até quando conseguia abrir, mas depois de tentar abrir um projeto, eu obtia o erro:

Your video card drivers seem not to support the required Vulkan version.

If possible, consider updating your video card drivers or using the OpenGL 3 driver.

You can enable the OpenGL 3 driver by starting the engine from the
command line with the command:

    "godot-csharp" --rendering-driver opengl3

If you recently updated your video card drivers, try rebooting.

Godot erro


Mesmo rodando via linha de comando conforme a mensagem indicava godot-csharp --rendering-driver opengl3, não funcionava:

Godot Engine v4.1.3.stable.mono.official.f06b6836a - https://godotengine.org
vulkan: No DRI3 support detected - required for presentation
Note: you can probably enable DRI3 in your Xorg config
ERROR: None of Vulkan devices supports both graphics and present queues.
   at: _create_physical_device (drivers/vulkan/vulkan_context.cpp:1278)
ERROR: Condition "err != OK" is true. Returning: ERR_CANT_CREATE
   at: _window_create (drivers/vulkan/vulkan_context.cpp:1681)
ERROR: Can't create a Vulkan window
   at: _create_window (platform/linuxbsd/x11/display_server_x11.cpp:5300)
libEGL warning: failed to get driver name for fd -1
...

Só que geralmente a gente ignora as mensagens e simplesmente resume em: “- Ahhh! Deu erro.. :(

No entanto, na segunda tentativa eu decidi ler as mensagens da saída e note que nelas há a seguinte linha:

vulkan: No DRI3 support detected - required for presentation

O Vulkan precisa dessa configuração!

Então pensei comigo: — Ummm… já sei!!.

Alterei o mesmo arquivo de configuração para DRI 3, mas após feito ainda estava meio estranho, então troquei o método de aceleração de sna para glamor.

Ao final meu arquivo: /etc/X11/xorg.conf.d/20-intel.conf ficou assim:

Section "Device"
    Identifier  "Intel Graphics"
    Driver      "intel"
    Option      "AccelMethod"    "glamor"
    Option      "DRI"          "3"
    Option     	"TearFree"     "true" 
EndSection

Bastou eu encerrar a sessão(deslogar) e entrar novamente que as coisas funcionaram:

Godot C# rodando

Se você tiver com esses mesmo problema, tente essas configurações!

Lembrando que antes você precisa ter o Vulkan instalado no seu sistema!

Você ainda pode substituir algumas linhas como o: Driver ou até mesmo adicionar também Backlight para funcionar com o MESA Intel:

...
Driver      "modesetting"
Option     "Backlight"    "Intel_backlight"
...

Caso seja necessário!

OBSERVAÇÃO:

Talvez você tenha chegado até aqui imaginando que aqui haveria solução para outro tipo problema: um bug do Godot que “trava” quando você salva qualquer modificação no seu projeto.

Eu já pesquisei sobre isso, inclusive de pessoas que já rodaram oo GDB pra saber exatamente onde há essa falha.

Se você usa distros GNU/Linux muito provavelmente isso ocorre por conta da sua Interface Gráfica: GNOME, bem como as baseadas nela: XFCE, Cinnamon,… incluindo os gerenciadores de janelas.

A boa notícia é que se você usar KDE Plasma, provavelmente não terá esse tipo de problema!


Links úteis


godot gamedev dicas


Compartilhe


Nosso canal no Youtube

Inscreva-se


Marcos Oliveira

Marcos Oliveira

Desenvolvedor de software
https://github.com/terroo


Crie Aplicativos Gráficos para Linux e Windows com C++

Aprenda C++ Moderno e crie Games, Programas CLI, GUI e TUI de forma fácil.

Saiba Mais

Receba as novidades no seu e-mail!

Após cadastro e confirmação do e-mail, enviaremos semanalmente resumos e também sempre que houver novidades por aqui para que você mantenha-se atualizado!