LINUX.ORG.RU

Оптимизация графики для Steam игр

 , , , ,


1

2

Наигрался в CS:GO на своем Linux Mint 17.3. Ядро стандартное. Пересел обратно на Windows и сразу картинка стала очень гладкой без мелких тормозов. Т.е. на линухе меня задолбали микротормоза, когда картинка как бы дрожит.

Карта - AMD Radeon HD 6790.

Я знаю про патч pf-kernel. Его можно попробывать. Еще не делал.

Вопросы к вам... с точки зрения разраба.

Где можно почитать о том как работает Steam и игры из него под Linux? Работа идет через Wine или напрямую трансляция Direct3D в OpenGL?

Хочу немного поковырять графический API или его прослойку чтобы как-то исправить ситуацию. Не знаю с чего начать.

Перемещено leave из development


Напиши видеодрайвер для начала, обычно проблемы в этом. Потому что у всех работает, а у тебя нет. У амд всегда проблемы с драйверами.

anonymous
()

Где можно почитать о том как работает Steam и игры из него под Linux?

На сайте стима о том, как работает, на сайте игры, о том как она работает. Но стим тут не при делах.

Работа идет через Wine или напрямую трансляция Direct3D в OpenGL?

Зависит исключительно от разработчиков игры. Вполне может быть, что даже напрямую через OpenGL.

Хочу немного поковырять графический API или его прослойку чтобы как-то исправить ситуацию. Не знаю с чего начать.

С написания нормального драйвера для AMD Radeon HD 6790. Или с покупки Nvidia, что с блобом несколько улучшит ситуацию, но опять не так, как на оффтопике.

peregrine ★★★★★
()
Ответ на: комментарий от peregrine

Аж сам драйвер. Я так понимаю ковырят fglx, если нет альтернатив. Я уже убедился что покупка радеона в 2011 года была опрометчивым шагом. nVidia на линухе рулит. Но все таки хочется в свободное время решить эту задачу.Некий чалендж.

bs1988
() автор топика
Ответ на: комментарий от peregrine

но опять не так, как на оффтопике.

на нвидии будет также как на винде,не придумывай отсебятины

на радеоне будет также как на винде если мощность радеона в 2 раза выше требуемой для игры

hxf88097
()
Ответ на: комментарий от hxf88097

Я отсебятину не придумываю, но FPS будет меньше процентов на 10-30 по опыту.

peregrine ★★★★★
()
Ответ на: комментарий от bs1988

У Nvidia есть другой недостаток - лет через 6 они дропают поддержку видеокарты и приходится отправлять её на помойку, вне зависимости оттого, нужна тебе новая или нет.

peregrine ★★★★★
()

Ничего не знаю, у меня в вайне Tomb Raider (2013) летает лучше нативного, так что амд здесь не причём. Но если ты действительно хочешь помочь, то помогай ребятам готовить amdgpu, ускоряй приход кроссплатформенных игр, становя Vulkan.

// fglrx никогда не юзал.

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

У Nvidia есть другой недостаток - лет через 6 они дропают поддержку видеокарты и приходится отправлять её на помойку, вне зависимости оттого, нужна тебе новая или нет.

какже горит от таких как ты

КАКИЕ ШЕСТЬ ЛЕТ

ДЕСЯТЬ ЛЕТ дурачок

последний драйвер на 8xxx нвидию версия драйвера 345 эта серия вышла ДЕСЯТЬ лет назад так драйвер ГОДИЧНОЙ давности,и все из стима(до опенгл4,это 99% игр) работает(и не тормозит) на этой нвидии,говорю как очевидец

когда РАДЕОН-уже через ГОД дропает поддержку

последний явная демонстрация-поддержка VULKAN есть только для 3xx серии радеонов,которая вышла МЕНЕЕ года назад,когда для 2xx радеонов НЕТ поддержки вулкана а 2xx серия вышла ВСЕГО полтора года назад

в то время для НВИДИИ-поддержка вулкана УЖЕ ЕСТЬ для всех карт начиная от ПЯТИ лет давности(когда вулкан еще и не планировался)

такчто делай выводы

hxf88097
()

в игры типа CS нужно играть на открытых дровах, там «картинка как бы дрожит» нет
мышиное ускорение/чувствительность тоже подкрути как в винде, «картинка как бы дрожит» от этого

anonymous
()

pf-kernel тебе никак не поможет

sudopacman ★★★★★
()
Ответ на: комментарий от hxf88097

в то время для НВИДИИ-поддержка вулкана УЖЕ ЕСТЬ для всех карт начиная от ПЯТИ лет давности(когда вулкан еще и не планировался)

Жаль только, что вулкан на нвидиа имеет смысл только на недавно вышедших картах, лол.

И амд не дропнула поддержку, она её еще не запилила.

Vigi
()
Ответ на: комментарий от anonymous

Лучше нативного под вендой?

Линуксовую версию я заводить поленился, там куча странных зависимостей, которые я отлавливать задолбался.

Потому что нативный он только для венды.

С разморозкой, анон, даже новость на ЛОРе проскакивала, что его таки релизнули под онтопик.

r3lgar ★★★★★
()
Ответ на: комментарий от r3lgar

Судя по скрину работает как в венде на минималках? Портировали с использованием eON кстати, так что порт не нативный. А opencl-волосы то завезли? И остальные плюшки?

anonymous
()

всем -унам выше

кто говорит что порт НЕ НАТИВНЫЙ

летом 2015 вышел патч для cs-go и dota2 который перевел движки этих игр на Source2

в Source2 нативный Опенгл и вулкан(на следущей неделе уже добавят)

вы оперируете фактами про «порт» пятилетней давности

hxf88097
()
Ответ на: комментарий от hxf88097

Да ладно тебе, линуксячие билды до сих пор через жопу работают, что зачастую комфортней в вайне запускать — там хотя бы текстуры не пропадают. Ну и в любом случае это не ион. А так в играх вальв проблема только с синхронизацией многопоточности (отсюда и микрофризы и всё остальное), в остальном меня не волнует транслятор там или нейтив.

anonymous
()
Ответ на: комментарий от hxf88097

А вот и Nvidia фанбоев подвезли. GeForce 8800 GTS нормально не работает под Linux-ом с 2012 года примерно. То, что её поддержку продолжали прописывать в драйвере, скорее недоразумение, чем реальность. А радеон тот да, вообще нельзя брать, если требуется 3D.

peregrine ★★★★★
()
Ответ на: комментарий от hxf88097

О, школьный аналитик в треде.
Оставайтесь на линии, нам очень важно мнение человека который считает что полный dd убивает SSD диски.

man_of_motley ★★
()

Я знаю про патч pf-kernel. Его можно попробывать. Еще не делал.

как он прорисовку графики ускорит,а?

Не знаю с чего начать.

начать с того, что поменять это ДЕ со спецэффектами и установить закрытый драйверэ

darkenshvein ★★★★★
()

У меня блоб от невидии: абсолютно никаких микротормозов и отличий в графике не обнаружил.

I-Love-Microsoft ★★★★★
()

Больше похоже на non constant frame time с плохим хендлом оного.

andreyu ★★★★★
()

Было бы лучше, если ты пересядешь на дистрибутив посвежее или обновишься до Linux Mint 18

ToaDron
()
Последнее исправление: ToaDron (всего исправлений: 2)
Ответ на: комментарий от anonymous

Судя по скрину работает как в венде на минималках?

Порт — да. У меня в вайне летает на максималочках без тормозов и фризов, фпс стабильный, 60. Я бы записал видео, чтобы не быть голословным, но при попытке записи фпс проседает на 10-15. Я не дрочер на графоний, но играть в Tomb Raider на минималках — это нехорошо.

r3lgar ★★★★★
()

напрямую трансляция Direct3D в OpenGL

оно

Хочу немного поковырять графический API или его прослойку чтобы как-то исправить ситуацию. Не знаю с чего начать.

напрасная трата времени - вся суть в драйверах AMD в комбинации с игрой, а не в ОС или самой игре

I-Love-Microsoft ★★★★★
()
Ответ на: комментарий от hxf88097

летом 2015 вышел патч для cs-go и dota2 который перевел движки этих игр на Source2, в Source2 нативный Опенгл

ок, понял, я был не прав

I-Love-Microsoft ★★★★★
()

Товарищ! Я тоже много страдал от ощущения от CS:GO «Не как на винде». В дело пошёл простой и грязный хак: fps_max 60. Картинка стоит как влитая, никаких «подвисаний», плюс это никак не связано с трафиком. Тоже Radeon, только 7970M + Catalyst 15.12 на Archlinux.

FlyingBuzz
()
Ответ на: комментарий от hxf88097

последний явная демонстрация-поддержка VULKAN есть только для 3xx серии радеонов

С дуба рухнул? Даже GCN1.0 в виде 7730-7970 поддерживают Вулкан.

когда РАДЕОН-уже через ГОД дропает поддержку

Всю линейка GCN поддерживают до сих пор. И будут дальше тянуть, пока что-то новое не придумают. Сколько им, пять лет где-то.

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

Правильно говорит же. Нативные порты без трансляторов работают с одинаковой скоростью. Особенно хорошо практически одинаковый FPS просматривается, если в Windows тоже включить рендеринг через OpenGL! На линуксе даже быстрее - засчёт отсутствия антивируса (но тяжеловесное DE уравнивает это).

ZenitharChampion ★★★★★
()
Ответ на: комментарий от peregrine

Ой, да ладно тебе... Единственное, чего не хватает 340-му драйверу, это KMS и поддержки Wayland. В 364-м уже есть!
Upd: почему ты назвал именно 2012 год? 340 вышел в 2014. Может, тебе нужно более трёх мониторов? Это отломали в 304 одновременно с добавлением поддержки XRandr 1.2
Upd2: Совет FlyingBuzz работает!

ZenitharChampion ★★★★★
()
Последнее исправление: ZenitharChampion (всего исправлений: 4)
Ответ на: комментарий от man_of_motley

который считает

я не «считаю» я говорю факты-и если у меня ssd умер из за этого и десятка случаев которые я описал в той теме и я гугля по своей проблеме увидел что офффорумы ссд производителей забиты идентичными проблемами,очевидно что оно так и есть

а то что ты в своем сферическом минимирке в вакууме живешь и ничего не делаешь знать-это уже твои проблемы

hxf88097
()
Ответ на: комментарий от hxf88097

новые карты(которые добавили в 2015 в большом обновлении) работают на Source 2
карты
Source 2

ЩИТО?

xDShot ★★★★★
()
Ответ на: комментарий от ZenitharChampion

Потому что с 12 года на той карточке под линем стал наблюдаться жуткий тиринг и резкое падение производительности. А карта была 2006 года. И кстати, там не столько драйвер виновен, сколько ядро, но драйвер править не стали.

peregrine ★★★★★
()
Ответ на: комментарий от peregrine

Странно, Попробуй compton --vsync opengl. Другие композитные менеджеры - отключить (если включены). В настройках игр VSync выключить, чтобы не было 30 FPS вместо 60.

ZenitharChampion ★★★★★
()

у меня такая же проблема. Стоит Kubuntu 16.04, Nvidia 635GT, блоб 352 от невидии, ядро 4.4.0-23-generic. Так и не смог побороть.

На оффтопике намного плавнее работает. Пробовал : разные блобы от невидии, дрова от нуво, пробовал играться со шмелём и различными опциями к нему. Безрезультатно.

zamazan4ik ★★
()
Ответ на: комментарий от r3lgar

amdgpu Прикольно. У меня серия Northern Islands, а минимум Southern Islands. Серия HD 7000. :(

bs1988
() автор топика
Ответ на: комментарий от FlyingBuzz

Спасибо. Помогло частично. Но это верхний лимит. К сожалению, не помогает для бросков FPS вниз.

bs1988
() автор топика
Ответ на: комментарий от hxf88097

лил, пруфов у тебя, конечно же, нет, да?

anonymous
()
Ответ на: комментарий от zamazan4ik

Для справки. Я не просто разработчик и пользователь Linux. Но педалю 3D графику. Знаю что по чем. В свое время на DirectX 9 собаку съел. На OpenGL колбасил уже позже. Понимаю как работает графический конвеер для полигональной графики и даже писал обратную трассировку.

У меня Core i5, RAM 8GB. Linux Mint 17.3 Mate. Ядро стандартное. Драйвер fglrx из репозитория стандартный. Начал я тестить основательно и разбираться. Включил «net_graph». Выставил графические настройки в CS:GO, все на минимум. Карту поставил себе de_nuke. Nuke в новом КС очень детализированный. Буквально шторм из полигонов. Каждая трубка, каждая ручка, выемка. Он у меня тормозит сам по себе. Тестил на винде и на линухе при одинаковых условиях. Точка - во дворе, возле красного контенера. VS отлключен.

На винде - 120 FPS. На пингвине - 30 FPS.

Теперь про самое главное про микрофризы. Я выяснил что они возникают от резких скачков FPS как вниз, так и вверх. Из-за чего экран как бы ребит. Попробывал выяснить из-за чего. Даже если летаешь по всей карте, дерагешь резко камерой. Смотришь анимацию, играешься с физикой, кидаешь дым, огонь. Плаваешь в воде. FPS стабильный. Причем пускай он низкий. Пускай это 40 FPS, но он не прыгает.

Только начинаешь пускать очередь с оружия, или другие игроки стреляют тупо -20 в независимости от настроек. Думал что такое на линухе только. На винде тоже самое - резко просидает на 20 едениц.

Т.е. мышка тут не при чем. Звук тоже, вроде бы, не при чем. Я давно бесился из-за того что нельзя поиграть на картах в режиме «zombie escape». Когда надо убегать от зомбаков к финишу. Все игроки(20-30) берут пулеметы и начиается сильный гул при одновременной стрельбе. И на этом моменте игра тупо вылетает неоднократно. Я так понимаю, что движок просто не справляется с такой нагрузкой.

Я так понимаю что микрофризы связаны от скочков от 70 FPS при стрельбе до 30-40.

Хотя я проводил неоднократно в разное время тесты GpuTest для OpenGL, разница на разных ОС 1%. И тут остается проверить. То ли дело в самом OpenGL, то ли дело в драйверах для Linux.

Ведь по сути Source и его предшественник это все же старые подходы в графике. Это повсеместная статика. Тени рисуются заранее. Тесселяции нет. Небо - это коробка.Освещения мало. BSP. По сути это семья idTech дивжков. И там хватит рисовать полигоны с текстурками. Без этих Ambient Occlusion, deferred shading. И даже без унифицированного освещения и расчета теней как в Doom 3. Rазалось бы хватит и старого OpenGL рисуй себе текстуры в полигонах и радуйся жизни.

Кароче надо написать на Direct3D рендеринг 1000000 полигонов, и тоже самое на OpenGL и сравнить. Убедиться самому! А то сильно расходиться с тем что говорите вы и что говорят на всяких журналах и обхорах.

bs1988
() автор топика
Ответ на: комментарий от bs1988

микрофризы

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

То, что ты 10-15 лет назад имел дело с графикой говорит лишь о том, что ты ни малейшего представления о современных реалиях не имеешь.

anonymous
()
Ответ на: комментарий от bs1988

Я так понимаю что микрофризы связаны от скочков от 70 FPS при стрельбе до 30-40.

микрофризы на радеоне на линуксе связаны с особенностью llvm->многоядерная архитектура радеонов из за слабого ЦП в том числе

и вы все дружно забили что

Сурс1 движок писался для РАДЕОНОВ в первую очередь(ибо если помните даже в халфлайфе2 на старте видео радеонов и радеоновская иконка в настройках графики висела),тоесть радеон был спонсором

и да в 2004+- годах радеон может и был «передовым» по dx9 и имел ряд фишек и обгонял по ФПС нвидию(да так и было),поэтому сурс1 сильно привязан к dx9 именно благодаря радеонам и работает на радеонах Очень хорошо и по сей день

из за этого-особенностей dx9-кода под радеон могли вылезти баги при трансляции в Опенгл(на томже радеоне в линуксе)...

такчто тут тот самый случай-где радеон уделал сам себя

hxf88097
()
Ответ на: комментарий от hxf88097

Слушай, ты так интересно рассказываешь, что хочется тебе верить. Мне стало интересно твоё мнение. Почему, по-твоему, дота на сурс2 фризится под оффтопом совершенно одинаково и независимо от рендерера (их там 3 на тот момент было, фризы не зависят от нагрузки и происходящего на экране) и это происходит ТОЛЬКО в мультиплеерных играх вальв на сурс1/2 движке и как тут замешаны ати/амд, когда у меня видеокарта от нвидии? Извини, конечно, но по-моему ты опять фантазируешь. У ТСа то проблема с дровами, такой сильной разницы быть не может потому что не может, а ты тут объясняешь совершенно иную проблему своими фантазиями про сложность архитектуры.

anonymous
()
Ответ на: комментарий от anonymous

Ну или перегрев, да. У ТСа. Я исхожу из предположения, что он не идиот, и проблема программная. Но эта разница не даёт мне покоя, она просто фантастическая. Может, частота неверно выставляется?

anonymous
()

У кого там проблема с дёрганной картинкой? Скачай эту игру и проверь: http://www.pouet.net/prod.php?which=53019

Если на стартовом экране сетка сиииильно бьёт по глазам - поздравляю, у вас оверVsync! Вы любите включить VSync и в самой игре, и в Compiz, и в nvidia-settings, и «Tear-free» в Catalyst! А надо что-то одно!

Также в этой игре VSync включен захардкорено, и не выключается. Идеальный тест на оверVSync!

  • Ubuntu: Compiz 0.9 (он же Unity DE), в OpenGL _выключить_ VSync, опцию Unredirect Fullscreen Windows _выключить_, в NVIDIA X Server Settings включить Vsync, в игре - _выключить_

    // я знаю про соблазн выкрутить в игре ВСЁ на максимум! Но VSync пусть будет выключен

  • Не Ubuntu и не Mint с Compiz 0.8.8 (например Fedora с MATE): пропатчить патчем Мегабакса, включить VSync в NVIDIA X Server Settings, _выключить_ в Compiz, _выключить_ в игре
  • Если не умеешь патчить патчем мегабакса (и нет готового репозитория): То же самое, что и предыдущий пункт, только в NVIDIA X Server Settings выключить VSync, а в Compiz включить. И всё будет хорошо, только нагрузка на CPU вырастет.
  • KDE: не знаю
  • Если композитного менеджера нет: compton --vsync opengl (для опенсорсных драйверов compton --vsync drm) Включен ли VSync в игре или общесистемно - уже не важно: compton будет работать корректно.

Каждый раз после изменения настроек, включай игру Spidr. Как только сетка стала плавной, как настоящий материальный объект - ты всё настроил!

Я специально выделил жирным слово «включить», чтобы показать, что включать VSync надо только один раз! А не два и не три! Кроме compton, с которым, если так сделать, 60 FPS не превращаются в 30 почему-то.

ZenitharChampion ★★★★★
()
Последнее исправление: ZenitharChampion (всего исправлений: 4)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.