LINUX.ORG.RU
ФорумGames

vulkan кэш шейдеров в proton

 , ,


0

1

Вот интересно что это такое и как оно влияет.

Запустил одну гаму на steam через proton. При запуске появилось окно (не игры а wine) создается сабж. И что то он долго создавался, не дошел до конца и появилось окно windows (стандартное крашед с предложение сообщить о ошибке). Потом запустилась сама игра, там внутри игры тоже создался кэшь шейдеров, там уже это на много быстрее и игра заработала.

Что это за сабж такой? В windows 2й кэшь (внутри игры) тоже есть, но первого я не видел. И почему его крах вроде не повлиял на нечего. И как второй раз запустить этот сабж?

★★★★★

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

Это как раз 2ая компиляция, средствами игры и она внутри игры, и такое тоже есть в windows. Сменил железку/дрова, игра обновилась и оно запускается заново.

А вот в linux появилось (один раз) такая же генерация но уже vulkan и по интерфейсу это было от proton-a.

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

А вы случайно не знаете как эту стимовскую заново запустить? Принудительно. Она у меня очень долго шла и обломалась с ошибкой … вот хотел ее еще раз пнуть.

Погляжу как новые дрова выползут, может оно еще раз запустит …

mx__ ★★★★★
() автор топика

Я обычно отключаю его. Кэш шейдеров полезен на массовых устройствах вроде стимдека где у всех одна версия драйверов. Это кэш, собираемый через слой fossilize, чтобы потом можно было пропустить компиляцию шейдеров. Он есть только в линуксовом стиме и только для vulkan. В этом был смысл когда в radv был медланный компилятор. Сейчас же с aco шейдеры быстрее скомпилируются, чем он будет качаться. Тем более если в игре есть стадия прекомпиляции шейдеров - отсутствие кэша не повлияет на произврдительность.

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

Сейчас дрова обновились на: nvidia-570.133.07.

Запустил игру, средствами steam пишет: обновление шейдеров vulkan, быстро добежало до 50%, потом медленно доползло до 100% и запустилась игра. Внутри игры уже запустилась другая генерация, она идет на много быстрее, чем первая, как в windows.

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

это нормально. на примере пое2, там тоже могло быстро дойти до 90%, а потом еще минут 20 ползти до 100 (в стиме). а после всего этого, при заходе в новую локацию в игре, шейдеры компилировались/обрабатывались налету. на хорошем компе это почти незаметно.

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

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

Тем более если в игре есть стадия прекомпиляции шейдеров - отсутствие кэша не повлияет на произврдительность.

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

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

Я кстати недавно запатчил modesetting так, чтобы иксы ели этот таймаут без проблем, заставив работать dri3 без glamor. Игру всё равно приходится перезапускать, но это уже не так страшно. К сожалению без glamor пока что тиринг, но чтобы его избежать скорее всего придётся делать вулкановую замену glamor (а лучше сразу на gpu командах как в intel, radeon и nouveau)

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

Что это за сабж такой?

А хрен его знает!

Зачем какой-то протон использовать, когда есть божественные wine+winetricks?! Из под wine запускаешь вендовую версию steam и из него уже все игры етественно тоже будут запускаться из под wine префикса из которого запущен steam.

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

в протоне много патчей под игры. Даже если использовать proton'овую ветку wine, могут отсутствовать многие нужные играм компоненты.
Мне например от proton нужен openvr враппер.
По дефолту сейчас proton использует контейнер, но это легко обойти кастомным скриптом запуска

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

в протоне много патчей под игры

Навряд ли больше чем под Wine. Если он их сам не тырит с Wine, а выдают как будто сами под протон написали.

Я не видела ни разу, за последние 30 лет, чтобы какой-то форк сраный обошёл оригинальный проект (если он не заброшен конечно). Поэтому — не верю!

Ну и опять таки, если обращаться к опыту, то всё нативное под линукс — плохой недальновидный подход, потому как первая же политота в адрес линукс будет бить по нативному софту. Путь линукс во взаимодействии с другими осями — это: виртуализация, эмуляция, эмуляция апи, контейнеризация — любое огораживание от нативности. И в случае если тратить много сил в нативное что-то, после его блокировки по политическим причинам во взаимоотношениях между гигантами в ИТ, когда это нативное поблочится или станет невозможно развивать это дальше без потери репутации своей или ещё чего нибудь придумают, все участники разработки этого нативного говна резко ощутят что зря потратили своё время на участии в этом проекте. Из чего можно смело сделать прогноз — что это всё временно! Какой бы гигант не участвовал в разработке этого проекта, всё равно придёт время когда этот гигант бросит разработку, а оригинальный Wine параллельно будет прекрасно работать и существовать, но находиться в худшем состоянии чем его форк, потому как патенциальные разработчики Wine тратили своё время в пустоту на форк, а не на оригинальный Wine. Ну и стоит ли опять ходить по этим граблям?!

[vanga_mode]Как только микрософт узнает о том, что вендовые игры прекрасно работают под валвовским протоном и огромное количество людей начнут перебираться на линукс отказываясь от венды, против валв или против разработчиков протона или сразу по обоим, будет применено давление.[/vanga_mode].

Ну и кому это нужно опять?!

With ★☆☆
()
Последнее исправление: With (всего исправлений: 3)
Ответ на: комментарий от With

Я не видела ни разу, за последние 30 лет, чтобы какой-то форк сраный обошёл оригинальный проект (если он не заброшен конечно). Поэтому — не верю!

К примеру OpenOffice брошенный проект?

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

[vanga_mode]Как только микрософт узнает о том, что вендовые игры прекрасно работают под валвовским протоном и огромное количество людей начнут перебираться на линукс отказываясь от венды, против валв или против разработчиков протона или сразу по обоим, будет применено давление.[/vanga_mode].

В смысле узнают? Да они уже давно не спят спокойно, все пытаются замутить свой xbox аналог steamdeck. И вроде читал что уже скоро что то подобное выпустят.

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

Есть ещё один момент: в протон уже запихнули поддержку видеодекодирования через говностример, dxvk, vkd3d-proton с нужной ветки. Под wine придётся всё это вручную докручивать. Обычно желающим играть в игры хочется всё готовое.
А под wine линукс-гейминг заключается в том, что если игра запустилось - то основной квест пройден, дальше уже не так интересно XD

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

К примеру OpenOffice брошенный проект?

Не знаю. Не слежу. Не знаю брошен ли он или нет. Из офиса уменя только Gnumeric для xls таблиц и Abiword для всяких doc и docx. Больще ничего про офисы не знаю. Но что-то в этом роде.

Я про любые форк проекты при существующем и развивающемся основном проекте.

Типа:
Etersoft — форк вайна под офисные нужды, вместо того, чтобы патчи заносить в основной проект.
Cedega — коммерческая залепа основанная на вайне.
Playonlinux - тоже самое основанное на вайне.
Ну и так далее...

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

Когда я пытался игру с eac запускать под wine вместо протона. игра не видела античит

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

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

Нет, там не так. Игра должна быть собрана со специальными настройками eac, которые разрешают работу в wine/proton. В теории эти настройки ослабляют защиту, так что многие разработчики/издатели паранойят и специально оставляют их выключенными.

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

в протон уже запихнули поддержку

А в оригинальном вайн он уже был, надо было просто разобраться как работает wine+winetricks и всё и готовые скрипты по настройке подключить в стим самому вавл в те игры где это требуется.

В общем. Крупные компании неправильно приходят в opensource. Надо так:
Перед приходом, компания должна заявить в прессе о своём приходе в опенсурс. Нанять сммщиков, чтобы они разнесли эту новость везде где только можно, стоит это недорого, тем более для крупной компании. Подождать три месяца пока это дойдёт до всех.
Взять за основу актуальную ветку софта и на её основе понаписать патчи и пропатчить и предложить это всё в основном проекте.
Ждать когда основной проект это всё примет и катализирует у себя в проекте, после чего начнётся взаимодействие основного проекта с новыми патчами от компании, которая пришла.
Всё!

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

Нет, там не так. Игра должна быть собрана со специальными настройками eac, которые разрешают работу в wine/proton. В теории эти настройки ослабляют защиту, так что многие разработчики/издатели паранойят и специально оставляют их выключенными.

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

Тут самим разработчикам надо расширять свои ИТ навыки и понимать что это программа эмуляции вендовых апи под линукс, а не программа для читерства.

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

Все они понимают. Просто, скажем так, linux предоставляет расширенные возможности по написанию труднодетектируемых читов. Чтобы эффективно им противостоять нужны специалисты, которых негде взять. Проще или запретить линукс, или забить на читеров.

Khnazile ★★★★★
()

Ну к примеру игра The Finals без кеша шейдеров будет иметь просадки с 85 до 10-15 кадров при повороте. Его можно выключить, но производительность это убивает напрочь. Если не докомпилировалось, тогда проблемы вылезут позже. Отключают только те у кого процессоры дохлые. Большинство игр не так чтобы и долго компилируют, крому CS2 и Quake Champions. Но после сборки изменения крайне редко требуют долгой компиляции. Обычно все на раз-два доделывается. В общем штука крайне полезная и нужная. Без кеша это только проверка запуска.

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

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

Почему косяк? Если шейдеры генерируются в рантайме, то их в принципе нельзя заранее скомпилироввать

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

Почему косяк?

Потому что тормозит.

Если шейдеры генерируются в рантайме

Нужно генерировать заранее всё что можно.

то их в принципе нельзя заранее скомпилироввать

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

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

Если шейдеры генерируются в рантайме, то их в принципе нельзя заранее скомпилироввать.

Если бы там были какие-то шейдеры, которые зависели от переменных в игре и поэтому их приходилось бы генерировать на лету, то это было бы нормально. А так, ты 10 минут компилируешь при запуске, а потом всё равно есть статтер до заполнения кэша шейдеров.

altwazar ★★★★★
()