С нарастването на игрите в Linux много потребители започнаха да търсят подходящи начини за показване на брояч на кадрите в секунда (FPS) като наслагване при стартиране на Linux игри. Броячът на FPS помага за промяна на производителността на играта, както и за сравняване на цялостната способност на компютъра да играе игри с различни резолюции.
За съжаление няма единен унифициран начин за показване на FPS брояч във всички Linux игри, който да е независим от основните технологии, върху които играта работи. Различните визуализатори и API имат различни начини за показване на FPS брояч. Това ръководство ще обясни различни методи, които могат да се използват за показване на FPS брояч в Linux игри.
Бележки за съвместимост:
- Работи с игри OpenGL и Vulkan.
- Работи с родни игри и Протон Proton е слой за съвместимост, включен в Steam за стартиране на игри на Windows в Linux. Тя се основава на Вино , DXVK и D9VK проекти с отворен код с допълнителни корекции и нови функции, добавени от разработчиците на Valve/Wine.
- Работи с игри, закупени в Steam или игри на трети страни, добавени към Steam от потребителя.
- Тестван за работа с интегрирани графични карти Intel и AMD.
- Не тествани с NVIDIA карти, тъй като не притежавам NVIDIA карта. Но според форумите на общността на Steam, вграденият fps брояч работи добре на NVIDIA карти.
Steam за Linux включва вграден FPS брояч, който може да се превключва от настройките. Това вероятно е една от най -съвместимите опции, която работи с повечето игри на Linux. Въпреки това имах някои проблеми с Unity Engine игрите, които не показват вградения FPS брояч. Тази опция също изисква да имате инсталиран Steam акаунт и Steam клиент във вашата система.
Steam дори ви позволява да добавяте игри, които не са закупени от Steam, към библиотеката с игри и вграденият FPS брояч работи и в тези игри. За да добавите игра, която не е пара, щракнете върху Игри и след това върху Добавяне на игра, която не е Steam, към Моята библиотека, както е показано на екрана по-долу:
Отидете до местоположението на вашите файлове с игри и след това превключете опцията Всички файлове в долната част.
Изберете изпълнимия файл на играта и след това щракнете върху ДОБАВЯНЕ НА ИЗБРАНИ ПРОГРАМИ, както е показано на екрана по -долу:
Ако искате да стартирате игра само за Windows в слоя за съвместимост на Proton на Steam, ще трябва да активирате допълнителна опция в свойствата на играта.
Добавих изпълним SuperTuxKart в библиотеката на steam и FPS броячът работи добре и тук. Имайте предвид, че всички игри на трети страни, добавени към библиотеката на Steam, не трябва да имат никакви интервали в пътя на местоположението на файла.
Метод 2 (LibGL)
Бележки за съвместимост:
- Работи само с игри OpenGL.
- Работи с родни игри и игри с вино.
- Тестван за работа с интегрирани графични карти Intel и AMD с драйвери с отворен код.
- Не тествани с NVIDIA карти, тъй като не притежавам NVIDIA карта. Трябва обаче да работи с графични процесори NVIDIA с драйвери с отворен код.
LibGL е библиотека на Mesa, която излага OpenGL API на приложения и игри и е включена в почти всички дистрибуции на Linux по подразбиране. Използвайки тази библиотека и друг пакет, който създава HUD на видим дисплей, ще покажем FPS брояч в игрите на Linux. Изпълнете следната команда, за да инсталирате необходимия пакет:
sudoподходящИнсталирайxosd-binЗа да покажете FPS брояч в родните Linux игри, използвайте командата по -долу, след като замените/path/to/executable със собствения си изпълним път на играта. Можете да научите повече за всички опции на osd-cat от тук .
LIBGL_SHOW_FPS = 1/път/към/изпълним 2> & 1 |tee /dev /stderr | sed -u -n -e '/^ libGL: FPS = /{s/.* ([^]* ) =/ 1/; p}' |
osd_cat --lines = 1 --color = жълто -outline = 1 --pos = отгоре --align = ляво
За да покажете FPS брояч в игри на Windows, работещи на Linux чрез Wine, използвайте командата по -долу, след като замените/path/to/executable със собствения си изпълним път на играта.
WINEDEBUG = fps wine/path/to/executable 2> & 1 | tee /dev /stderr |sed -u -n -e '/trace/s /.* приблизително // p' | osd_cat --lines = 1 --color = жълто
-outline = 1 --pos = top --align = center
Ако използвате префикс Wine, командата ще бъде (replace/path/to/wine/prefix и/path/to/executable):
WINEDEBUG = fps WINEPREFIX =/път/към/вино/префикс вино/path/to/executable 2> & 1 | tee /dev /stderr | sed -u -n -e '/ trace/ s/
.*приблизително // p '| osd_cat --lines = 1 --color = yellow --outline = 1 --pos = top
--align = център
Този метод има малки ограничения. Въпреки че можете да персонализирате osd-cat HUD, той остава на фиксирана позиция в областта на дисплея, без да се взема предвид геометрията на прозореца на играта. На горната снимка на екрана, FPS броячът е показан над прозореца на играта, а не вътре в него. Игрите, работещи на цял екран, не се влияят от това.
Метод 3 (Gallium3D)
Галий 3D е API, който улеснява разработването на драйвери за графични карти, като предоставя набор от стандартни библиотеки и интерфейси. AMD и NVIDIA драйверите с отворен код са изградени върху Gallium3D. За да покажете брояча на FPS в родните Linux игри, използвайте командата по -долу, след като замените/path/to/executable със собствения си изпълним път на играта: За да покажете FPS брояч в игри на Windows, работещи на Linux чрез Wine, използвайте командата по -долу, след като замените/path/to/executable със собствения си изпълним път на играта. Ако използвате префикс Wine, командата ще бъде (replace/path/to/wine/prefix и/path/to/executable): В горната снимка на екрана използвам персонализирана променлива GALLIUM_HUD, която показва и температурите на графичния процесор и процесора. Тази персонализирана команда е различна за различните конфигурации на компютъра. За да прочетете повече за всички опции за персонализиране, изпълнете команди: Само за справка, ето персонализираната команда, която използвах на екранните снимки по -горе: Бележки за съвместимост: Наслагваща маса Вулкан е нов слой Vulkan, добавен към последните версии на Mesa. Той показва различна информация за изпълняваното приложение, като използва наслагване. За да покажете брояча на FPS в родните Linux игри, използвайте командата по -долу, след като замените/path/to/executable със собствения си изпълним път на играта: За да покажете FPS брояч в игри на Windows, работещи на Linux чрез Wine и DXVK, използвайте командата по -долу, след като замените/path/to/executable със собствения си изпълним път на играта: Ако използвате префикс Wine, командата ще бъде (replace/path/to/wine/prefix и/path/to/executable): Бележки за съвместимост: DXVK осигурява Vulkan-базиран преводачески слой за D3D10 и D3D11, позволяващ на потребителите да играят Direct3D 10/11 игри на Linux. D9VK използва DXVK бекенд, за да осигури допълнителна реализация Direct3D9, която може да се използва за игра на игри, базирани на D3D9. За да покажете FPS брояч в DXVK игри, работещи на Linux чрез Wine, използвайте командата по -долу, след като замените/path/to/executable със собствения си изпълним път на играта: Ако използвате префикс Wine, командата ще бъде (replace/path/to/wine/prefix и/path/to/executable): Това бележи края на тази публикация. В заключение бих споменал една малка подробност, пропусната по -горе. Всички методи, описани по-горе, без пара, ще работят и за Steam игри. Трябва да замените/path/to/executable или wine/path/to/executable или WINEPREFIX =/path/to/wine/prefix wine/path/to/executable с % command % в същите команди, използвани по -горе. Просто добавете пълната команда за стартиране на опции в свойствата на играта в приложението Steam, както е показано на екрана по -долу:
GALLIUM_HUD=помогнеglxgears
sensors_temp_cu-k10temp-pci-00c3.Tdie ' /път/да се/изпълним Метод 4 (Vulkan Overlay Table)
VK_LAYER_MESA_OVERLAY_CONFIG = позиция = горе вляво
WINEPREFIX =/път/към/вино/префикс вино/път/към/изпълним Метод 5 (DXVK HUD)