Меню Рубрики

Fps в играх linux

Причина низкого fps в играх на linux графическая система линукса или отсутствие оптимизации игр под него?

Лор. Вот поставил я себе metro 2033 на свой arch и что я наблюдаю? Я наблюдаю низкий фпс и непонятные фризы на ровном месте иногда, хотя на оффтопике все идет гораздо более гладко и спокойно. В том же cs go фпс ниже чем на оффтопике. да вообще во всех играх какие ставил фпс ниже. В чем причина? Издатели не оптимизируют игры, драйвера не заточены под игры или графическая подсистема линукса такая кривая?

PS: карточка nvidia gtx660TI с проприетарными драйверами.

Линукс заточен под консоль и фрейм-буфер ещё с 90-х годов.

графическая подсистема линукса такая кривая

1. Часто игры работают через целый набор прослоек, а не нативно.

2. Порт делает только часть разрабов, причем самые криворукие из них.

На вяленом фпс должен больше быть?

если у тебя низкий фпс в современных играх — ты покупаешь новую видеокарту
если у тебя низкий фпс на linux — ты покупаешь windows
ОС — это сраный инструмент для запуска и нормальной работы приложений. и ты должен выбирать инструмент под задачи, а не наоборот, Карл.

Отключи композитинг с эффектами, если оно включено.

PS: карточка nvidia gtx660TI с проприетарными драйверами.

Сам спросил — сам ответил.

Я же сказал, что в оффтопике фпс выше, гораздо. Или по твоему проприетарные драйверы тормозят ее?

Иксы тут в принципе не могут быть причиной, так как в иксах рендеринг идёт напрямую.

Игры на Vulkan на линуксе работают ничуть не хуже.

На вяленом фпс должен больше быть?

Конечно! И все DX11 игры без прослоек всяких будут работать. А еще HL3 эксклюзивно под вяленый релизнут.

Игры на Vulkan на линуксе работают ничуть не хуже.

А эксклюзивные фото Линуса Торвальдса и Поттеринга в качестве обоев раб.стола будут? Если будут, то прям сейчас поставлю.

Конечно, на них они вместе катаются на водных лыжах и пьют пиво в пабе(На заднем плане Столлман лапает баб за разные выпуклости).

Все три, да. Но скоро их будет гораздо больше.

А вот у меня в CS GO наоборот FPS выше, чем в десятке. Да и в метро тоже. Карта GTX 760. У меня KDE, и в играх композитинг вырубается. Так что копни в эту сторону. И помни — большинство игр под Линукс не являются нативными портами. Иксы вносят свою лепту, кто это отрицает — пусть зайдёт в блог разработчика KWin и почитает его статью о будущем Linux-игр.

На вяленом фпс должен больше быть?

Да, если игра его поддерживает. Из игровых библиотек его поддерживает SDL 2.0.6, из движков — Unity (бета вроде какая-то)

А как композитинг в последних кедах отключить?

Параметры системы — Экран — Обеспечение эффектов — поставить галочку на «Разрешать приложениям блокировать режим с графическими эффектами». Это позволит игре самой вырубить композитинг при старте. Если игра этого сделать не может — то вырубить их там же. Вообще, можно комбинацией Shift + Alt + F12, но вот у меня она что-то не срабатывает.

Причина низкого fps в играх на linux

кривые руки пользователя и (кривые руки/злой умысел) игрушкописателя.

Игрухи с x-ами связаны чуть менее чем никак. X-ы лишь предоставляют окно, поверх которого будет выводится оверлей с результатом работы GPU. На этом, всё общение игрухи с х-ами заканчивается. Линуксячий OpenGL при тех же равных быстрее вендового из-за дебильного устройства вендового OpenGL. Из-за дебильности вендовой реализации OpenGL игрушкописатели пользуют ублюдочный DirectX вместо нормальных кросс-платформенных способов доступа к GPU. А эмуляция DirectX на линуксе стоит ресурсов.

Поэтому, с игрухами — сиди на своей венде и не жужжи. Их пишут вендузятники для вендузятников. Или пинай разработчиков, чтобы отказались от сраного DirectX и писали на чём-то приличном, но это с большой вероятностью никаких результатов не даст.

ЗЫ: Нормальный софт, а не игрухи, использующий GPU, как правило, на линухе работает быстрее, тот же блендер взять.

Источник

Производительность CS GO и Dota 2 на Linux оказалась выше чем на Windows 10

реклама

Практически каждый слышал о таких играх как CS GO и Dota 2. Это главные проекты компании Valve, которые собирают многотысячную аудиторию и приносят компании огромную прибыль. Кроме этого, это одни из главных мировых киберспортивных дисциплин. Ежегодно по CS GO и Dota 2 проводится множество турниров, а также грандиозные киберспортивные мероприятия от Valve с огромными призовыми фондами — CS:GO и Dota Major. Обе игры построены на базе движка Source с тем отличием, что Dota 2 основана на обновленном Source 2, который лучше использует возможности современных систем, а в CS: GO до сих пор используется первая версия Source, несколько улучшенная и модифицированная версия того же движка, что использовался и в CS Source. Поэтому CS:GO не может похвастаться хорошей многоядерной оптимизацией и поддержкой современных графических API. В свое время компания Valve провела большую работу по портированию движка Source на Linux, внедрив в него поддержку рендеринга через OpenGL. Оптимизация была настолько хорошей, что производительность Source игр на Linux оказалась выше чем на Windows.

YouTube канал FlightlessMango опубликовал отчет о тестировании CS GO и Dota 2 на системах Windows и Linux. В Windows в качестве графического API использовался DirectX и Vulkan, а на Linux использовался OpenGL, так же игры на Linux были протестированы в Wine с реализацией DirectX поверх API Vulkan с помощью прослойки DXVK.

В CS GO производительность Linux OpenGL оказалась на 15% выше, чем в Windows с DirectX 9. После этого было ожидаемо увидеть снижение производительности при запуске игры через Wine с DXVK, оно составило около 7%. Вырос и минимальный FPS, который на тестовой карте Ulletical наблюдается в дыму. Многие владельцы слабых компьютеров жалуются на просадки FPS в дыму и при использовании зажигательных и светошумовых гранат в CS GO. В поисках лучшей производительности можно попробовать CS GO на Linux.

реклама

В Dota 2 Linux OpenGL разделил победу с Windows DirectX 11, остальные варианты показали производительность от 2 до 30% ниже.

реклама

Производительность CS GO на Linux оказалась лучше, чем в Windows 10. Производительность Dota 2 OpenGL и DirectX 11 примерно одинакова, по графику FPS в некоторых сценах OpenGL лучше. Но нужно отметить, что игроки, предпочитающие сторонние киберспортивные платформы, такие как FACEIT, не смогут играть на них с Linux. Это связано с тем, что античит-программы на этих платформах поддерживают только Windows. Есть ли вероятность, что в будущем античит-системы придут к общему знаменателю — созданию единого Linux дистрибутива для киберспортивных игр, полностью защищенного от интеграции различных мошеннических программ? Если это и произойдет, то очень нескоро. А сейчас можно порекомендовать любителям CS GO и Dota 2, испытывающим проблемы с производительностью на старых компьютерах, попробовать Linux. Возможно, это поможет увеличить FPS, особенно в CS GO.

Источник

Блог начинающего линуксоида.

советы, руководства, инструкции.

Страницы

пятница, 4 декабря 2015 г.

Как увеличить производительность игр в Linux

В данной заметке я опишу 5 способов увеличения производительности игр в Linux. Особенно это будет актуально для «виндовых» игр, запущенных в Wine.

1) Свежие драйвера на видеокарту

Первый и самый очевидный способ. В свежие версии драйверов и компонентов графического стека, вносятся новые оптимизации, устраняются недоработки и так далее. Для Ubuntu есть несколько замечательных репозиториев, которые предоставляют свежие графические драйверы:

Самый популярный PPA-репозиторий со свежайшим графическим стеком. Соответственно, используете вы его на свой страх и риск, так как в нём нет ничего стабильного. В этом репозитории находятся свежие версии Xorg, Mesa, свободных графических драйверов и так далее. Подключение:

sudo add-apt-repository ppa:xorg-edgers/ppa
sudo apt-get update && sudo apt-get upgrade

В этом репозитории находятся более стабильные, но одновременно свежие версии свободных графических драйверов, которые также имеют поддержку Wine Gallium-Nine и многое многое другое. Подключение:

sudo add-apt-repository ppa:oibaf/graphics-drivers
sudo apt-get update && sudo apt-get upgrade

Proprietary GPU Drivers

Данный репозиторий — новичок, но настоящий must have для всех, у кого видеокарта Nvidia. Здесь находятся самые свежие версии проприетарного драйвера для этих видеокарт. Подключение:

sudo add-apt-repository ppa:graphics-drivers/ppa
sudo apt-get update

Далее откройте менеджер драйверов, и там выберите желаемую версию драйвера

2) Установка патченого ядра.

В некоторых ситуациях, увеличить производительность игр, помогает установка модифицированного ядра. К примеру ядро Linux-RT (ядро реального времени), на моей конфигурации. дало мне прибавку в 12 FPS в некоторых играх. Данное ядро есть в стандартных репозиториях Ubuntu, и ставится командой:

sudo apt install linux-image-rt

Также положительный эффект могут дать ядра PF-Kernel и Zen-Kernel, о которых я говорил в недавней заметке.

3) Потоковая оптимизация (только для Nvidia с проприетарным драйвером).

Nvidia — лучший друг Линуксоида, когда речь заходит о 3D и играх. И начиная с драйвера версии 310, в нём появилась возможность серьёзно увеличить производительность, включив многопоточный рендеринг. По умолчанию данная опция не включена, так как есть приложения, которые не работают с ней (например игра Metro Last Light). Включить эту опцию можно следующими способами:

  • Вручную: в терминале командой export __GL_THREADED_OPTIMIZATIONS=1 ;
  • Автоматически при запуске системы: открыть файл /etc/profile и в конец вставить строку __GL_THREADED_OPTIMIZATIONS=1 ;
  • Запускать приложение с этим параметром: например __GL_THREADED_OPTIMIZATIONS=1 steam , либо в самом Steam указать данную опцию в параметрах запуска игры: __GL_THREADED_OPIMIZATIONS=1 %command%

Прирост производительности составляет от 15 до 45 кадров в секунду, в зависимости от игры. Пригодится для Wine. Кстати о Wine. В Winetricks очень желательно выставить опцию GLSL в значение Disabled.

4) Запуск в отдельном X-сервере (или в отдельных иксах).

Это давний способ увеличить производительность игры, а также решить проблему со сворачиванием игры (не все они нормально сворачиваются, некоторые перестают работать. В прочем, для Windows проблема также актуальна). Для этого:

sudo nano /etc/X11/Xwrapper.config

Меняем параметр allowed_users=console на allowed_users=anybody и сохраняем. Это нужно для того, чтобы можно было запускать X-сервер от пользователя, а не root. Далее необходимо добавить себя в группу audio, иначе звука в отдельных иксах не будет:

usermod -G audio -a имяпользователя

Далее редактируем файл

/.Xauthority, для этого в консоли:
xauth
list

Увидим что-то вроде

blind.local:0 MIT-MAGIC-COOKIE-1 e087ead1f80cd5d35b6bd273222d1feb
[fe80::204:61ff:fe9e:c083]:0 MIT-MAGIC-COOKIE-1 e087ead1f80cd5d35b6bd273222d1feb
blind/unix:0 MIT-MAGIC-COOKIE-1 e087ead1f80cd5d35b6bd273222d1feb

Буквенно-цифровое окончание будет другим.
Пишем там же, вставив своё значение:

add :1.0 MIT-MAGIC-COOKIE-1 e087ead1f80cd5d35b6bd273222d1feb

Запуск производится следующей командой:

xinit /путь/до/исполняемого/файла/игры $* — :1

Например: xinit /usr/games/steam $* — :1

Запустится отдельная сессия X, и запустится указанное приложение. Переключение обратно в режим рабочего стола производится комбинацией Ctrl+Alt+F7, вторые иксы будут (в моём случае) на F2. Альтернативный вариант: переключиться на любую свободную консоль (F1-F6), залогиниться, и запустить приложение командой:

startx /путь/до/исполняемого/файла/игры — :1

Однако такой способ неудобен тем, что в случае если игра имеет лаунчер, или какие-то дополнительные окна при запуске, будут проблемы с их отрисовкой. Да и запускать это всё руками как-то муторно. Исправить эту проблему поможет любой легковесный оконный менеджер. Например Openbox. Устанавливаем:

sudo apt install openbox

Теперь создаём файл:

у вас запустится оконный менеджер Openbox, из которого вы уже можете запустить любое приложение. Если вы хотите, чтобы например Steam стартовал автоматически при запуске Openbox, сделайте так:

Сохраните. Теперь Стим будет запускаться автоматически, а вы можете легко перключаться между сеансами. ВНИМАНИЕ: у себя в KDE на Debian 8, я обнаружил баг, при котором после перехода в основные иксы и обратно на дополнительные, появлялись сильнешие графические артефакты в некоторых играх, а сам Стим отрисовывался кусками. Способа решения проблемы я не нашёл. Если вы знаете — напишите в комментариях, я добавлю в статью.

Соответственно, вместо Steam, вы можете добавить PlayOnLinux, если запускаете виндовые игры через него

5) Отключение графических эффектов (композитинга) для полноэкранных приложений.

Если вы используете KDE или Cinnamon, рекомендую отключить полноэкранный композитинг. В KDE: Параметры системы — Эффекты — Дополнительно — Поставить галочку на «Отключить графические эффекты для полноэкранных окон»

Для Cinnamon: Настройки — Общие — Отключить композитинг для полноэкранных окон

Вот и всё. Конечно это не избавит от проблемы кривых портов игр. Там уже вина разработчика игры. Но тем не менее, всё описанное здесь, неоднократно проверено и даёт весьма нехилый прирост производительности. Приятных игр!

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

  • Mac os acer aspire 5315
  • Mac os 2560 1080
  • Mac os 777 chmod
  • Mac mini середина 2007 установка os x
  • Mac mini переустановка mac os