LINUX.ORG.RU
ФорумGames

Существуют ли 3D игры под Wayland?

 , ,


0

2

Ведь одним из преимуществ Wayland перед X11 называют его архитектурное превосходство, потому что там меньше legacy кода, что позволит 3D движкам демонстрировать лучшую производительность, чем на X11.

Есть ли хотя бы одна игра, движок которой использует Wayland для вывода 3D-графики напрямую? А то я слышал про ПО, что работает под ним прямо, без xwayland, только о эмуляторах терминала, браузерах да файловых менеджерах…

По сути, любые игры, использующие SDL2, могут работать нативно под Wayland. Например, Сounter-Strike: Global Offensive и Dota 2.

Kron4ek ★★★★★
()
Последнее исправление: Kron4ek (всего исправлений: 1)

wine-wayland

Это зависит от библиотеки, которая создаёт окно, GLFW умеет, к примеру, но и версия должна быть соответствующей.

l4gfcm ★★
()
Ответ на: комментарий от Vsevolod-linuxoid

Через переменную SDL_VIDEODRIVER=wayland. И еще нужно через LD_PRELOAD подгрузить новую версию SDL2, так как та, что в идет в комплекте с игрой, может быть старой и не работать с Wayland.

LD_PRELOAD=/usr/lib/libSDL2-2.0.so.0.22.0 SDL_VIDEODRIVER=wayland %command%
Kron4ek ★★★★★
()
Ответ на: комментарий от l4gfcm

Я писал о играх под Wayland. Не о играх, движки которых работают с расчетом на WinAPI с DirectX или X11, и запускаются через прослойки совместимости.

Vsevolod-linuxoid ★★★★★
() автор топика
Последнее исправление: Vsevolod-linuxoid (всего исправлений: 1)
Ответ на: комментарий от Vsevolod-linuxoid

Как выше уже упомянул человек, еще GLFW поддерживает Wayland. Про другие не знаю. Я знаю пару игр, которые испольузют GLFW: Grand Theft Auto 3 и Vice City (нативные Линуксовые версии из проекта re3).

Kron4ek ★★★★★
()

Современные игры не опираются на оконную систему, а опираются на библиотеки, которые дают им графический контекст и обработку различных Event’ов: SDL2, GLFW, GLFM и другие. Бонусом идет кросс-платформенность и независимость от X11, Wayland, WinAPI и т. д. А все эти прямые вызовы GLX, Xlib и прочее давно в прошлом и плохая практика, учитывая вендор-лок и устаревание этих API.

Для SDL2 достаточно переопределить переменную окружения и игра будет нативно работать под Wayland без XWayland-прослойки. Для остальных обычно так же.

P.S. Аналогичная ситуация с приложениями на Qt и Gtk. Чтобы запустить существующее нативное приложение под Wayland, обычно достаточно просто выставить переменную окружения. И во многих современных дистрах вроде Fedora или новой Ubuntu LTS эти переменные обычно выставлены по-умолчанию.

Конечно, могут быть сложные случаи, когда разработчик зачем-то вылез за пределы либы или фреймворка и напрямую завязался на Xlib, Xcb и пр., при таком раскладе нужно будет избавляться от иксового вендор-лока в сторону кросс-платформенного решения.

EXL ★★★★★
()
Последнее исправление: EXL (всего исправлений: 1)

Вроде как UE5 такое поддерживает, так что осталось только сделать на нём игру.

MageasteR ★★★★★
()

Ведь одним из преимуществ Wayland перед X11 называют его архитектурное превосходство, потому что там меньше legacy кода, что позволит 3D движкам демонстрировать лучшую производительность, чем на X11

Я думаю чтобы это увидеть нужно проводить исследование и писать специальный тест. Иксы/вейланд - довольно тонкая прослойка между приложением и opengl, я сходу не представляю где там могут быть узкие места. К производительности ближе замена OpenGL на Vulkan, а Wayland - это скорее про GUI’шные удобства типа нормальной поддержки vsync, разных DPI на разных мониторах, сетевой прозрачности и всяких таких вещей.

Есть ли хотя бы одна игра, движок которой использует Wayland для вывода 3D-графики напрямую? А то я слышал про ПО, что работает под ним прямо, без xwayland, только о эмуляторах терминала, браузерах да файловых менеджерах…

Господи, да уже всё умеет. Тулкиты (gtk/qt) умеют, умеют их OpenGL’ные виджеты, SDL2 умеет, а его используют почти все игры, значит они тоже умеют.

slovazap ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.