Proton: [Запрос на функцию]: Патчи «Девять галлий»

Созданный на 22 авг. 2018  ·  123Комментарии  ·  Источник: ValveSoftware/Proton

Во многих (более старых) играх до сих пор используется dx9. Можно ли было бы использовать патчи Gallium Nine для Proton для пользователей AMD и Intel GPU, чтобы получить почти нативную производительность под Linux? Я наблюдаю гораздо лучшую производительность, играя в старые игры, такие как Assassin's Creed 1, при использовании обычного Wine с патчами Gallium Nine по сравнению с Steam play с Proton.

Feature Request

Самый полезный комментарий

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

Это легко исправить (у вас, ребята, уже есть множество форков и обходных путей, чтобы исправить это), Gallium Nine теперь имеет лучшую поддержку графического процессора (теперь работает с последними драйверами Intel) и дает прирост производительности в 1,5-2 раза по сравнению с DXVK и wined3d.

И вы уже получили кучу отчетов об играх, в которых говорилось об улучшении совместимости просто за счет использования Gallium Nine.

https://github.com/ValveSoftware/Proton/issues/173#issuecomment -499869941
https://github.com/ValveSoftware/Proton/issues/255#issuecomment -415997284
https://github.com/ValveSoftware/Proton/issues/355#issuecomment -415972910
https://github.com/ValveSoftware/Proton/issues/554#issue -354016973
https://github.com/ValveSoftware/Proton/issues/770#issue -354455950
https://github.com/ValveSoftware/Proton/issues/1073#issuecomment -473703760
https://github.com/ValveSoftware/Proton/issues/2704#issuecomment -518029014

Я знаю, что это, вероятно, не является для вас приоритетом, поскольку это относится только к старым играм, но да ладно, существует огромный каталог отличных игр, которые принесут пользу Gallium Nine.

Все 123 Комментарий

Это гораздо лучший вариант. И я слышал, что он будет объединен с DXVK (в конечном итоге), так что у нас будут все версии D3D с 9 по 12. Старые версии в любом случае не нуждаются в функциях Vulkan, я считаю, что игры D3D 8 можно даже запускать на программном рендерере. в 60 FPS на современном оборудовании.

Очень интересно! Где вы узнали, что его собираются объединить с DXVK?

Ничего не могу найти, так что могу ошибаться. Вероятно, он не будет объединен прямо в DXVK, а скорее будет поддерживаться вместе с ним или объединен с Wine. Я смутно помню, как эти два проекта упоминались в одном контексте (что неудивительно) замены перевода D3D => OGL или чего-то в этом роде. В любом случае, я думаю, что накладные расходы Vulkan незначительны по сравнению с прямым подходом Gallium Nine, но преимущества очевидны - его могут использовать все игроки, а не только те, у кого есть драйверы FOSS. И это может быть продвинуто еще дальше, на саму Windows, чтобы пользователи Windows могли запускать игры с возможно более высокой производительностью из-за лучшего использования процессора или запускать их вообще, поскольку некоторые старые игры больше не работают в современной Windows, но работают в Wine.

Я согласен, что VK9 или что-то подобное было бы лучшим решением / реализацией. Однако, насколько я понимаю, текущая версия VK9 все еще является пробной версией и поддерживает очень мало игр, если вообще поддерживает их. Он может отображать только некоторые простые тесты DirectX9.

Патчи Gallium Nine готовы, хорошо протестированы многими игроками и предлагают (почти) родную производительность. Реализовать это было бы довольно тривиально, поскольку патчи уже есть. Это было бы очень желанным дополнением для всех геймеров AMD / Intel, пока VK9 не достигнет зрелости.

До завершения VK9 осталось несколько лет, и я думаю, что даже накладные расходы на d3d-pba можно считать «незначительными».
Если вообще есть, я бы хотел, чтобы у протона (но даже у восходящего вина) были какие-то приоритеты.
Скажем, сначала родной (галлий) или вулкан (dxvk), затем другой, последний, но не менее важный wined3d (потому что не все графические процессоры поддерживают vulkan)

ps Девятка не работает для пользователей Intel

Поскольку в Steam все еще играют в сотни игр Direct3D 9, а Gallium Nine оказался намного более эффективным, чем традиционный d3d9 Wine, он должен быть дополнительной функцией, по крайней мере, через user_setting.py.

Я бы предпочел слияние клапана VK9 с DXVK. так что у них равномерное покрытие вулканов.

Конечно, в идеальном мире. Но VK9 пока не запускает ни одной игры и находится только в стадии проверки концепции. Он может запускать простые тесты dx9 и все. Кроме того, парень, работающий над ним, считает это хобби-проектом и не прикладывает столько усилий, сколько парень, который разрабатывает DXVK. Могут пройти годы, прежде чем VK9 будет готов к использованию. Между тем, почему бы не использовать хорошо протестированные и полностью готовые патчи для пользователей AMD?

Я согласен с тем, что исправления Gallium 9 должны использоваться пользователями AMD mesa. Это часть мезы, нам просто нужна винная версия, чтобы ее можно было использовать.

Согласовано. А кто знает? Может быть, в ближайшем будущем от этого выиграют не только radeonsi и nuveau?
https://www.phoronix.com/scan.php?page=news_item&px=Intel-Iris-Gallium

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

По моему опыту, Gallium Nine оказался не чем иным, как фантастическим. Было бы здорово, если бы его включили в Proton.

Я лично голосую за подход Vulkan.

@ shoober420 Я бы тоже предпочел это. Но до завершения рабочего слоя dx9 to vulkan осталось еще год. Почему бы не позволить пользователям AMD насладиться собственной производительностью dx9 с помощью хорошо протестированных и полностью готовых патчей Gallium Nine? Их нужно только объединить, чтобы пользователи AMD могли прямо сейчас наслаждаться собственной производительностью.

@ shoober420 Думаю, мы все предпочитаем этот путь для протона. Это логичный шаг вперед. Мы не просим Valve отказаться от вулканической реализации d3d9. Мы просим, ​​чтобы они разрешили poeple на открытых драйверах на основе галлия использовать то, что у них уже есть. Галлий 9 уже входит в наш стек драйверов. «Патчи Gallium 9» для Wine просто пропускают стандартный перевод API d3d9 в opengl и вместо этого отправляют вызовы API прямо в графический процессор. Предотвращение потери производительности из-за перевода API.

@Mushoz @Xalphenos

Я вижу, что ваши парни правы, вы оба правы. Я не знал, что VK9 так далеко. Затем я поддерживаю выбор дополнительных вариантов. Однажды я могу использовать AMD или Intel.

Я выполнил работу по созданию всех вариаций Wine, staging и девяти для openSUSE. По сути, просто нужно применить соответствующий набор исправлений из https://github.com/sarnex/wine-d3d9-patches и построить как обычно. Поэтому нам нужно дважды скомпилировать вино и предоставить опцию для конкретного двоичного файла.

Для справки: пакет openSUSE / wine , который объединяет все четыре вкуса вина.

  • вино
  • вино-девять
  • постановка вин
  • винная постановка-девять

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

Вы думаете о № 22. Каким-то образом может существовать механизм для добавления собственной среды выполнения, но на данный момент он неизвестен.

Но для меня вино и протон должны иметь изящный механизм отката. От vulkan до gallium, до opengl ... В зависимости от наиболее работоспособного запасного варианта, который вы можете использовать в своей системе.

Связанный, конечно, но этот запрос всегда должен быть необязательным по той же причине, по которой восходящий поток Wine не объединяет его ... он работает не на всех платформах и только с подмножеством карт, которые могут использовать связанные драйверы Mesa. Это сильно отличается от других изменений, внесенных в вино в этом репо (кроме исключения старых карт). # 22 позволит кому-то, у кого есть Wine-девять, выключить его, но этот вопрос касается того, чтобы он был частью официальной сборки.

Да ... и я не вижу, что сложно проверить, какой драйвер используется, на каком оборудовании, и решить эту проблему (в любом случае то же самое для vulkan или opengl)

Я тоже, никогда не говорил, что это не так. Просто отвечаю на № 22, который конкретно касается выбора нестандартных сборок за пределами Proton, а это не то, что я предлагаю, и не эта проблема.

Учитывая обширный характер различий между ValveSoftware / wine (3.7) и wine / wine (3.7) и подход, который использует Valve, вероятно, имеет смысл объединить его непосредственно в их винную вилку. Тогда он либо а) должен быть переключаемым во время выполнения (возможно, автоматически), либо собираться дважды (полагаем, что исправления уже включают переключатель времени компиляции).

Патчи тегов 3.7 не подходят для ValveSoftware / wine.

error: patch failed: configure.ac:1261
error: configure.ac: patch does not apply
wine-d3d9.patch:5385: new blank line at EOF.
+

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

Они собираются обновить его, как только решат "проблемы с запуском".

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

Обновление винной версии не было тем, о чем я просил или нуждался, поскольку я применил патчи для 3.7. Что касается постановки, это был давний запрос, который не интересовал винный апстрим прежде всего потому, что он не работает на Mac и не на всем оборудовании Linux. Следовательно, Proton интегрирует множество улучшений производительности, которые ограничивают объем оборудования ... так что это может быть интересно для них.

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

Не проблема ни с Mac, ни с аппаратной совместимостью (особенно после последних слухов Intel).
Вы можете увидеть мои ссылки, почему самая .. актуальная проблема, по крайней мере на данный момент, - это в первую очередь просто отсутствие подтверждения.
(насколько, кто знает, может быть, они уже достигли консенсуса по IRC)

Даже если бы VK9 был готов к работе с Proton, я бы предпочел наиболее эффективное решение. Пока Proton не предложит это, я продолжаю придерживаться своего старого и проверенного вина с девятью исправлениями для игр, зависящих от d3d9.

Я полностью осознаю, что Gallium Nine не будет (и, вероятно, никогда не будет) самым эффективным решением для всех , но я здесь не об этом. Было бы здорово иметь его в качестве опции для тех, кто использует драйвер Gallium! :)

Вот решение:
https://www.phoronix.com/scan.php?page=news_item&px=Zink-Gallium3D-OpenGL-Vulkan
https://gitlab.freedesktop.org/kusma/mesa/tree/zink/src/gallium/drivers/zink

По сути, Gallium3D всегда представлял собой тонкую абстракцию между различными трекерами состояния и драйверами, так что просто вставьте в Vulkan в качестве драйвера и бац, вы получите все поддерживаемые трекеры состояния, включая Gallium 9 и OpenGL от Mesa. Жизненным циклом байт-кода шейдера будет байт-код DX9 HLSL из игры-> TGSI-> NIR-> SPIRV вау, если работает, то работает .... :)

Единственное, что я вижу в этом «решении», - это временная остановка для карт Nvidia до того, как VK9 будет готов. На AMD это точно не будет быстрее.

@ jerbear64 Gallium Nine уже достаточно хорошо протестирован в боевых условиях, хотя, судя по тому, что я вижу, по крайней мере, на драйвере amdgpu. Я часто думал, что это можно было сделать с самого начала, даже в случае с DXVK, это могло быть просто отслеживание состояния внутри Mesa, а затем просто написать что-то вроде ZINK в конце для закрытых драйверов или напрямую использовать собственное оборудование где возможно. Хотя не жалуюсь ... :)

Не все используют мезу.

В среду, 26 сентября 2018, 20:35 Алекс Фуллер, [email protected] написал:

@ jerbear64 https://github.com/jerbear64 Девятый галлий уже достаточно
хотя из того, что я вижу, испытано в боевых условиях, по крайней мере, на драйвере amdgpu. я был
часто думают, что это можно было сделать с самого начала, даже с помощью DXVK
в случае, если это могло быть просто отслеживание состояния внутри Месы, а затем
просто напишите что-нибудь вроде ZINK в конце для закрытых драйверов или используйте
родное железо прямо там, где это возможно. Хотя не жалуюсь ... :)

-
Вы получили это, потому что прокомментировали.
Ответьте на это письмо напрямую, просмотрите его на GitHub
https://github.com/ValveSoftware/Proton/issues/66#issuecomment-424824077 ,
или отключить поток
https://github.com/notifications/unsubscribe-auth/AAipRw-R-g3DJOiWzHdR5SOHBu2X-xCxks5ue8jigaJpZM4WHXpZ
.

@cjwijtmans хорошо, с этим может каждый, у кого есть драйвер vulkan, это была бы просто библиотека, на которую можно ссылаться, например, DXVK ...

Вот еще один способ:

https://github.com/GabrielMajeri/d3d9-to-11

dgVoodoo уже реализует, среди прочего, direct3d 1–7, а также 8.1–11, так что повторная реализация проекта direct3d9 в direct3d 11 позволит всем старым версиям direct3d просто работать через DXVK.

@ jerbear64, который звучит наоборот. Девять бесполезны только на проприетарной платформе nVidia. С AMD вы в основном используете Mesa. Intel также создает новый драйвер Gallium3D, так что это будет решение Intel + nouveau + AMD в какой-то момент в будущем.

Похоже, что dgVoodoo работает над поддержкой D3D9:

https://www.vogons.org/viewtopic.php?f=59&t=34931&start=3780#p705374

Он ограничен шейдерной моделью 1.x. Это означает, что игры, использующие D3D9 с шейдерной моделью 1.x, могут запускаться поверх DXVK в его следующем выпуске. Обратной стороной этого является то, что dgVoodoo не является открытым исходным кодом.

Чего бы это ни стоило, теперь мы получили поддержку Mesa, часть Gallium Nine, теперь в Steam Flatpak из-за спроса со стороны других приложений Flatpak.

@ jerbear64, который звучит наоборот. Девять бесполезны только на проприетарной платформе nVidia. С AMD вы в основном используете Mesa. Intel также создает новый драйвер Gallium3D, так что это будет решение Intel + nouveau + AMD в какой-то момент в будущем.

Ну, это бесполезно для пользователей Nvidia, но не нарушает совместимость с ней. Можно дать что-то пользователям графики с открытым исходным кодом, а не Nvidia, если это доступно

Подождите, это не так? Я думал, что это относится к части Wine (которая обсуждается здесь). В любом случае, вероятно, было бы неплохо получить его собранным и доставленным, даже если он не используется по умолчанию.

Подождите, это не так? Я думал, что это относится к части Wine (которая обсуждается здесь). В любом случае, вероятно, было бы неплохо получить его собранным и доставленным, даже если он не используется по умолчанию.

Он определяет наличие галлия при запуске игры и при необходимости перенаправляет на другую реализацию.

@shanefagan Графические процессоры без галлия 9 в будущем могут оказаться в меньшинстве.
Intel выразила заинтересованность в поддержке Gallium 3d во всех будущих графических процессорах.

@hungrymonkey Не думаю, что @shanefagan утверждал обратное. Кроме того, графические процессоры nVidia с проприетарными драйверами по-прежнему занимают большую часть настольных компьютеров Linux.

@nanonyme gallium nine вообще не влияет на проприетарные драйверы nvidia или их использование. Он проверяет, поддерживает ли используемый драйвер g9, и если нет, он не используется. В частности, он проверяет, включен ли в mesa g9, а затем проверяет, какой драйвер mesa используется. Если драйвер mesa не используется, он буквально не может использовать функциональность g9 и полностью игнорируется.

@GloriousEggroll, похоже, мы говорим на

Хорошим примечанием для патча является то, что разработчик его обновлял патчи WINE до 3 дней назад. Я бы сказал, что было бы хорошо хотя бы построить его и выбрать в качестве настройки для некоторых систем, которые имеют проблемы с производительностью dx3d9 (например, я с играми, такими как SC2, без серьезных модификаций).

В любом случае неплохо связать патчи, так как я не видел ссылок https://github.com/sarnex/wine-d3d9-patches

@Mushoz Сейчас он запускает Unreal Tournament. В течение 2019 года _может_ быть полностью работоспособным. У вас есть план здесь .

Пропуск собственных драйверов и инструментов, которые уже используются и готовы к использованию, в пользу переходного уровня, который находится в стадии интенсивной разработки, не выглядит разумным. Во всяком случае, уже готовый Gallium Nine должен быть представлен в качестве опции для пользователей AMD; один раз / если появится VK9, он все еще может остаться в качестве опции.

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

VK9 не будет работать на устройствах, отличных от amdgpu-device / pre-GCN-GPU. С другой стороны, Gallium-Nine может работать на старых моделях r300g и даже на графических процессорах, таких как мой VEGA10. Но да, эти старые графические процессоры VLIW на базе r600g, на которые до сих пор полагаются некоторые из моих друзей, считаются устаревшими.

Как и сам D3D9.

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

Что ж, это польза, если она работает, и ничтожная, если нет. Как будто вы можете сделать стандартную реализацию WINE по-прежнему, но разрешить пользователям устанавливать ее как переменную среды, если они хотят ее попробовать. Они уже делают это, если вы получаете лучшую производительность от самого WINE, а не от DXVK, поэтому на самом деле это не проблема с инструментами для конфигурации. Им просто нужно установить это на место. Они могут даже нанять человека, который делает патч, чтобы он связал последние 10%, чтобы получить его.

Разница в том, что WineHQ не продает вам игры и требует возврата средств.

Я думал, поэтому у нас белый список ...

Белый список не будет работать, если у вас сложное разветвление режимов работы, конечно

"Сложный"

Белый список не будет работать, если у вас сложное разветвление режимов работы, конечно

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

Белый список не будет работать, если у вас сложное разветвление режимов работы, конечно

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

Для меня это звучит достаточно справедливо.

Я думаю, вам нужно сначала загрузить libd3dadapter9-mesa в среду выполнения Steam.

Я думаю, вам нужно сначала загрузить libd3dadapter9-mesa в среду выполнения Steam.

Как работает libd3dadapter9? Я знаю, что GalliumNine находится непосредственно в Мезе, и патчи к WINE указывают на это. Я видел, что это в Ubuntu с 18.10, но я никогда не использовал эту библиотеку.

Как работает libd3dadapter9? Я знаю, что GalliumNine находится непосредственно в Мезе, и патчи к WINE указывают на это. Я видел, что это в Ubuntu с 18.10, но я никогда не использовал эту библиотеку.

Он просто обращается к трекеру состояния Mesa D3D9 точно так же, как opengl32.dll в Wine, например, к обычным трекерам состояния OpenGL¹.
Изменить: извините, я перепутал libd3dadapter9 с DLL, созданной для Wine. В тот день не было достаточно кофе. Рассматриваемая библиотека реализует трекер состояния D3D9 для Mesa. Упрощенный: он предлагает встроенную поддержку D3D9 без дополнительных слоев перевода, таких как WineD3D или VK9. Если вам интересно, посмотрите эту презентацию .


¹: Предупреждение: ответ может быть неточным.

Я смог собрать proton с девятью патчами как сборку local arch linux с --no-steam-runtime. Единственная игра, которую я тестировал до сих пор, - это Valkyria Chronicles 1, и она вела себя странно с этой локальной сборкой, например, RX 480 был определен как R9 290 в настройках, элементы управления иногда не работали должным образом, а настройки, установленные с помощью инструмента конфигурации Valkyria Chronicles, не получали вообще спасли.

Хотя эти проблемы могут быть связаны с созданием протона с --no-steam-runtime, а не с девятью патчами.

Исходный патч с https://github.com/sarnex/wine-d3d9-patches/blob/wine-d3d9-3.16/wine-d3d9.patch требовал исправления только для контекста в configure.ac см. Https: // gist .github.com / raetiacorvus / 8bf19a733ac131d744030788030941c4 из исходного патча были

Вам все равно нужно сначала применить https://github.com/sarnex/wine-d3d9-patches/blob/wine-d3d9-3.16/d3d9-helper.patch и запустить autoreconf в папке с вином после применения обоих патчи.

Вдобавок мне пришлось добавить -with-d3d9-nine-module=/usr/lib32/d3d/d3dadapter9.so в конфигурацию wine32 в следующем файле, но это может быть результатом неправильной настройки среды сборки? https://github.com/ValveSoftware/Proton/blob/83871c7bf93b785b23b987956b7cc3608d6998b3/build/makefile_base.mak#L713 -L726

Также не забывайте, что вам нужно включить gallium nine trough winecfg для каждого pfx.

https://github.com/ValveSoftware/Proton/issues/66#issuecomment -447569917

Это отличная новость! Несмотря на первоначальные неудачи, наличие в некоторой степени функциональной сборки - это значительный прогресс. Поскольку я плохо разбираюсь в кодировании, не могли бы вы уточнить, почему вы построили с аргументом --no-steam-runtime ? Разве созданный вами Proton не работает с клиентом Steam? Потому что весь смысл Proton заключается в том, чтобы запускать игры Steam, для которых требуется Steam DRM с собственным клиентом Steam вместо версии для Windows.

@raetiacorvus

У меня в Steam довольно большая коллекция игр. Пожалуйста, дайте мне знать, если вам нужно протестировать больше игр, я могу попробовать устроить это.

Единственная игра, которую я тестировал до сих пор, - это Valkyria Chronicles 1, и она вела себя странно с этой локальной сборкой, например, RX 480 был определен как R9 290 в настройках.

Это нормальное поведение Gallium Nine, мой RX 580 делает то же самое с моими сборками Wine-staging-9.

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

@ rea987 --no-steam-runtime означает, что протон построен на основе локальных библиотек, а не исправленных из контейнера докеров среды выполнения Steam. Он по-прежнему является действующим инструментом совместимости с паром и может использоваться в качестве замены клапана, обеспечивающего выброс протонов. Одна из проблем на данный момент заключается в том, что ему не хватает пропатченного сопоставления контроллеров из среды выполнения, что привело к проблеме, с которой я столкнулся с Valkyria Chronicles. Вы, вероятно, могли бы обойти это, используя некоторые инструменты, доступные для Wine, для правильного сопоставления контроллеров.

@raetiacorvus Было бы замечательно, если бы вы предоставили пошаговое руководство по компиляции Gallium Nine для Proton. Кроме того, как насчет того, чтобы сделать запрос на перенос, возможно, @raetiacorvus Мое предложение предоставить больше игр для тестирования остается в

Я сделал свой форк Proton с патчами:

https://github.com/popsUlfr/Proton (проверьте ветку proton_3.16_gallium_nine_extras и просто следуйте инструкциям)

git clone https://github.com/popsUlfr/Proton.git
cd Proton
git checkout proton_3.16_gallium_nine_extras
git submodule update --init

Он также работает со средой выполнения Steam, мне пришлось добавить этот немного уродливый блок материала mesa: https://github.com/popsUlfr/Proton/commit/0397af03059c32a6ac5e0213d39769e33f2914df

Я добавил переменную среды PROTON_USE_GALLIUM_NINE=1 которую вы можете использовать, чтобы легко включить Gallium 9, если ваша карта поддерживает его (также можно включить через промежуточную вкладку в winecfg)

Функции :

  • Галлий девять очевидно
  • Патч Path of Exile для dx11: https://bugs.winehq.org/show_bug.cgi?id=42695
  • Принудительно wined3d11, если нет поддержки Vulkan: # 1749
  • Включите ffmpeg по умолчанию и создайте с ним FAudio: # 2082
  • Переключатель GLSL, чтобы отключить шейдеры GLSL и использовать шейдеры ARB вместо этого, чтобы уменьшить заикание с помощью wined3d

Вот сборка для тестирования:
~ Proton_3.16-5_Gallium_Nine_Extras.tar.xz ~
~ Proton 3.16-5 Gallium Nine Extras 0.1.0 ~
~ Proton 3.16-5 Gallium Nine Extras 0.1.1 ~
~ Proton 3.16-6 Gallium Nine Extras 0.1.1 ~
~ Proton 3.16-6 Gallium Nine Extras 0.1.2 ~
Proton 3.16-6 Галлий Девять дополнительных компонентов 0.1.3

$ mkdir -p ~/.steam/root/compatibilitytools.d
$ tar xf Proton_3.16-6_Gallium_Nine_Extras_0.1.3.tar.xz -C ~/.steam/root/compatibilitytools.d

На вкладке steamplay он должен отображаться как Proton 3.16-6 Gallium Nine Extras

Между прочим, я добавил это в README, после этапа настройки вам нужно запустить make all dist вместо make dist иначе вы просто получите win64 wine и ничего больше. Так что это похоже на ошибку в README официального протона или на мою собственную систему, я не уверен.

Отличная работа @popsUlfr!

Будут ли у вас общие 32-битные, 64-битные и / или мультиархитектурные выпуски на странице GitHub вашей вилки?

Спасибо за старания и вилку!

@ rea987 Нравится? https://github.com/popsUlfr/Proton/releases/tag/proton-3.16-5-gne-0.1.0

Скажите, нормально ли это у вас работает? У меня нет доступа к amd-карте, чтобы тщательно это проверить: /

Хм, я выполнил инструкции, но похоже, что Steam не собирает все, что находится в созданном каталоге. В раскрывающемся списке «Инструмент совместимости» отображаются только «обычные» выпуски Steam.

Есть идеи, что я делаю неправильно? Я использую KDE NEON 18.04 (в основном Ubuntu), если это что-то изменит?

@popsUlfr Именно! Это более ясный и понятный способ его распространения. Да, мне также нужна карта AMD для правильного тестирования. : - /

@AndrewLoom Ваша установка Steam находится в каталоге ~/.local/share/Steam или ~/.steam ? Потому что мне нужно было использовать позже, чтобы заставить его работать.

Спасибо rea987! D'Oh, теперь это так очевидно, но я все еще не думал об этом. :-)

@AndersDala Нет проблем, это проблема, которая недавно @popsUlfr может отредактировать руководство по установке, чтобы указать также каталог ~/.steam ?

У меня есть AMD Radeon Vega 56. Я успешно установил его и выбрал для использования во всех играх Windows, но кажется, что такие игры, как A Hat in Time или Dragon Age: Origins, не будут работать, если я включу Gallium Nine с помощью PROTON_USE_GALLIUM_NINE = 1 (с чистым префиксом), окно даже не появляется. С PROTON_USE_GALLIUM_NINE = 0 они работают нормально.

У меня есть AMD Radeon Vega 56. Я успешно установил его и выбрал для использования во всех играх Windows, но кажется, что такие игры, как A Hat in Time или Dragon Age: Origins, не будут работать, если я включу Gallium Nine с помощью PROTON_USE_GALLIUM_NINE = 1 (с чистым префиксом), окно даже не появляется. С PROTON_USE_GALLIUM_NINE = 0 они работают нормально.

Тот же графический процессор и тот же результат для меня. Игры (Dishonered, Dead Space) не запускаются с Gallium.

@Mastergatto , @archfan Вы установили драйверы Mesa с поддержкой Gallium Nine?

https://launchpad.net/~oibaf/+archive/ubuntu/graphics-drivers

Да, я использую Arch и установил mesa-git из AUR. Он поставляется с включенным Gallium Nine.

@archfan Хорошо, завтра я попробую на своем старом ноутбуке AMD, который, надеюсь, поддерживает Gallium Nine.

Да, поскольку Gallium Nine по умолчанию включен в пакете mesa, по крайней мере, для карт AMD на ArchLinux. У меня также есть винный сценический галлий, в котором Gallium Nine работает, как задумано.

Можете ли вы посмотреть на результат, когда он работает с галлием девять?
Итак, в параметрах запуска игры добавьте:

PROTON_DUMP_DEBUG_COMMANDS=1 PROTON_USE_GALLIUM_NINE=1 %command%

Запускаем игру.
Это приведет к падению некоторых скриптов протонов в /tmp/proton_<username>
Запустите ./run чтобы увидеть результат.

Также на всякий случай переключитесь на другой протон, перезапустите Steam. Теперь переключимся на протон галлия девять.

РЕДАКТИРОВАТЬ: чтобы не загрязнять этот поток, я думаю, было бы лучше обсудить его здесь: https://github.com/popsUlfr/Proton/issues/2

Также извините, если это вселило ваши надежды и не работает из коробки. Я поддерживал это локально, часть галлия девять была скорее вопросом «что, если» на случай, если я смогу протестировать на amd. Я все равно решил поделиться им, видя, что это обсуждение становится все более заметным, и, возможно, было бы полезно узнать что-нибудь о поддержке галлия девять в протоне :)
Другие встроенные функции также могут быть полезны, так что ...

Gallium Nine работает в Proton с https://github.com/dhewg/nine

Неудивительно, что это нарушает оверлей Steam, но в остальном он работает нормально.

Gallium Nine работает в Proton с https://github.com/dhewg/nine

Неудивительно, что это нарушает оверлей Steam, но в остальном он работает нормально.

привет здорово!

не могли бы вы рассказать о том, что вы делали? Я немного заблудился.

Еще один проект, который следует рассмотреть как альтернативу этому https://github.com/Joshua-Ashton/d9vk

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

кто-нибудь знает об этом?

по-видимому, мы должны использовать протонты, чтобы получить все эти googdies?

кто-нибудь знает об этом?

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

Я сделал это :

wget https://raw.githubusercontent.com/Winetricks/winetricks/master/src/winetricks
chmod +x winetricks
wget https://raw.githubusercontent.com/Winetricks/winetricks/master/src/winetricks.bash-completion
sudo mv winetricks /usr/bin
sudo mv winetricks.bash-completion /usr/share/bash-completion/completions/winetricks
python3 -m pip install --user pipx
~/.local/bin/pipx ensurepath
eval "$(cat .bashrc | tail -n +10)"
pipx install protontricks
pipx upgrade protontricks
protontricks 9420 galliumnine

но теперь игра (которая работала) выдает мне окно с сообщением об ошибке: «Не удалось создать устройство Direct3D»

@tatsujb Я не думаю, что это правильная страница для этого, но вот она. Вы используете Ubuntu 18.04 или Mint 19? Потому что драйверы Oibaf Mesa для этих версий Ubuntu / Mint не работают для Gallium Nine с декабря / января. У меня была такая же проблема, я переключился на Ubuntu Mate 19.04, и теперь он работает.

@ rea987 Я использую ubuntu 19.04, попробую еще раз. РЕДАКТИРОВАТЬ нет, это не помогает. что еще ты сделал? Какие у вас есть аргументы в пользу запуска и какая игра вам подходит?

@tatsujb Честно говоря, немного.

  • Я избегал сторонних PPA Mesa, так как совместимость драйверов
  • Я убедился, что установлены как libd3dadapter9-mesa, так и libd3dadapter9- mesa: i386 .
  • Вручную заменил / usr / bin / winetricks последней версией: https://wiki.winehq.org/Winetricks
  • Очищен ~ / .cache / winetricks
  • Переустановил Gallium Nine Standalone (последний) через Protontricks.

@ rea987

да, это был трюк. С тех пор я понял это, спасибо!

было бы неплохо, кстати, иметь и галлиемнин, и d9vk. Я сравнил их по времени сегодня, и галлийанин работает намного лучше (на 20% или более выше кадров в секунду) и не заикается при первом посещении новой области. наличие обоих приведет к более высоким шансам запустить данную игру для DirectX9 с хорошей производительностью, поскольку некоторые игры могут не работать с тем или другим.

В идеальном мире рендерер изящно откатился бы от native, к vulkan на opengl (или переключил бы приоритет первых двух, если d9vk в конечном итоге должен был иметь какое-то внутреннее преимущество, но все же).
Вместо этого Valve (и даже программисты, которые насмехались над Nine), похоже, сосредоточились на том, чтобы просто создать хороший «достаточно хороший» сад для последних карт, вместо того, чтобы все и кухонная раковина работали. Даже автоматическую проверку карт без вулкана не добавят.

Вот мои 20 центов:

Теперь, когда у нас есть автономный Gallium Nine, им довольно легко пользоваться, потому что вам больше не нужны патчи для Wine. Все, что вам нужно сделать, это: (1) установить mesa-libd3d9 из диспетчера пакетов вашего дистрибутива (2) установить Nine в свой винный префикс, используя winetricks или скрипт установщика.

Что касается «лучшего» варианта: я не собираюсь начинать здесь пламенную войну, поэтому я просто поделюсь тем, что нашел до сих пор: https://github.com/Joshua-Ashton/d9vk/issues/ 95 # issuecomment -492651741 - это, конечно, означает только то, что в моей системе Nine была быстрее с названиями, которые я пробовал до сих пор, что может не отражать их работы на компьютерах других людей. РЕДАКТИРОВАТЬ: Я понимаю, что Nine в настоящее время не подходит для пользователей NVidia, но он достаточно хорошо работает с AMD (radeonsi) и Intel (iris) и улучшится по сравнению с NVidia, когда zink станет достаточно зрелым.

Девять автономных - это легкая прогулка, чтобы использовать действительно абсолютно.
Но почему-то, * каждый раз * вы указываете на это разработчикам, кажется, что они не слышат.
Я не знаю, могло ли обсуждение происходить за дверями / IRC, и я тоже не хочу разгораться - но я не знаю, что еще сказать, чтобы заставить их признать * настоящее * положение дел в проклятый код, а не какой-то карикатурный образ, который у них в голове о том, каким был проект полдесятилетия назад.

Я понимаю, что Nine в настоящее время не подходит для пользователей NVidia, но он достаточно хорошо работает с AMD (radeonsi) и Intel (iris) и улучшится по сравнению с NVidia, когда zink станет достаточно зрелым.

Так же хорошо работает на r600g. Графические процессоры, поддерживаемые r600g, кстати, не имеют поддержки Vulkan.

на nvidia сейчас я переключаюсь между ubuntu с установленным 418 и ubuntu с установленным Nouveau, чтобы я мог включить mesa и gallium 9. производительность с родными Linux-играми, которые могут работать под модерном, является приемлемой, а игры Wine-Gallium-9 работают очень хорошо.

Но, очевидно, я не могу дождаться, когда mesa поддержит и Nvidia.

Думаю, сейчас это решает D9VK. Я тестировал его с SC2 и несколькими другими играми, и он работает очень хорошо. Надеюсь, что в будущем это будет интегрировано в DXVK, а патчи будут перенесены и в Proton.

d9vk по-прежнему работает намного хуже, чем галлий девять, но да, даже встроенная поддержка d9vk была бы потрясающей, так как это уже сложнее, чем галлий девять, для интеграции в существующую протонную установку

Еще одна сложная часть поставки d9vk заключается в том, что для него требуется последняя версия mesa. не просто последний выпуск, он основан на mesa-git. поэтому, чтобы сделать его доступным для самых разных дистрибутивов, вам, возможно, даже придется отправить с ним mesa-git или проинструктировать пользователей выяснить, как получить mesa-git для их дистрибутива

@shanefagan Нет, d9vk намного медленнее, чем девять, см. мои выводы в моем предыдущем посте.

Существует отдельная версия, которую легко установить. Возможно, они могут быть поставлены с Proton и включены с аргументом. D9VK великолепен, но, как утверждают другие, он медленнее и часто использует новейшие драйверы. Установка Gallium через winetricks работает, но было бы неплохо иметь встроенную опцию.

Автономный: https://github.com/iXit/wine-nine-standalone

Здравствуйте! ~ У кого-нибудь еще возникали тихие вылеты на 4.11-6 при запуске игр с установленным Gallium Nine Standalone?

@Bryophyllum то же самое, игра не запускается после установки galliumnine с помощью протонтрика.
Хуже всего то, что нет простого способа узнать, работает ли вообще галлий.

На самом деле после некоторых попыток и ошибок это сработало:

Можете ли вы посмотреть на результат, когда он работает с галлием девять?
Итак, в параметрах запуска игры добавьте:

PROTON_DUMP_DEBUG_COMMANDS=1 PROTON_USE_GALLIUM_NINE=1 %command%

Запускаем игру.
Это приведет к падению некоторых скриптов протонов в /tmp/proton_<username>
Запустите ./run чтобы увидеть результат.

Также на всякий случай переключитесь на другой протон, перезапустите Steam. Теперь переключимся на протон галлия девять.

РЕДАКТИРОВАТЬ: чтобы не загрязнять этот поток, я думаю, было бы лучше обсудить это здесь: popsUlfr # 2

Также извините, если это вселило ваши надежды и не работает из коробки. Я поддерживал это локально, часть галлия девять была скорее вопросом «что, если» на случай, если я смогу протестировать на amd. Я все равно решил поделиться им, видя, что это обсуждение становится все более заметным, и, возможно, было бы полезно узнать что-нибудь о поддержке галлия девять в протоне :)
Другие встроенные функции также могут быть полезны, так что ...

Если я запускаю из Steam, появляется всплывающее окно «Установка драйверов» или что-то в этом роде и отключает galliumnine перед запуском игры.
Однако запуск игры через сброшенные скрипты не отключает galliumnine и запуск игры с ним.

@tuxutku Некоторые игры, в которых я пробовал Gallium Nine Standalone на Proton 4.11, либо

Хуже всего то, что нет простого способа узнать, работает ли вообще галлий.

Не совсем. Если вы запустите Steam Client из интерфейса командной строки, вы увидите сообщение от Gallium Nine зеленого или красного цвета при запуске игры; однако в этом случае ничего не вытесняется.

С PROTON_LOG=1 я получаю эту ошибку при попытке запустить GTA SA:

10264.098:0031:0032:err:module:import_dll Library d3d9.dll (which is needed by L"Z:\\var\\home\\user\\.local\\share\\Steam\\steamapps\\common\\Grand Theft Auto San Andreas\\gta-sa.exe") not found

Я не знаю, что вызывает это, и как мне это исправить, но, надеюсь, кто-то сможет найти корень этой проблемы, собрав все ключи воедино.

Я собираюсь открыть новую проблему об отключении клиентом Steam galliumnine перед запуском игры, у меня эта проблема возникает в другой игре

Привет, @tuxutku , этот запрос функции - подходящее место для обсуждения нового поведения. Похоже, что изменение произошло одновременно с добавлением d9vk в Proton, и это может быть побочным эффектом того, что Proton управляет этим.

Хуже всего то, что нет простого способа узнать, работает ли вообще галлий.

Не совсем. Если вы запустите Steam Client из интерфейса командной строки, вы увидите сообщение от Gallium Nine зеленого или красного цвета при запуске игры; однако в этом случае ничего не вытесняется.

С PROTON_LOG=1 я получаю эту ошибку при попытке запустить GTA SA:

10264.098:0031:0032:err:module:import_dll Library d3d9.dll (which is needed by L"Z:\\var\\home\\user\\.local\\share\\Steam\\steamapps\\common\\Grand Theft Auto San Andreas\\gta-sa.exe") not found

@Bryophyllum это не так просто, как увидеть, опубликован ли Native Direct3D 9 v0.5.0.356-release is active. For more information visit https://github.com/iXit/wine-nine-standalone .
Например, при запуске игры tomb raider 2013 года из сброшенной команды ./run она публикует строку, потому что программа запуска использует directx9, но не игру. Мне пришлось настроить регистр с помощью regedit чтобы играть в игру с galliumnine

Игры с VAC раньше работали с вином афаик. но теперь по какой-то причине этого не происходит. CSGO жалуется на несоответствие подписей файлов. TF2 не приводит конкретных причин.

По какой-то причине PROTON_DUMP_DEBUG_COMMANDS=1 не работал в Team Fortress 2, и мне пришлось скопировать и изменить скрипт из другой игры.

#!/bin/bash
#Run game or given command in environment

cd "/home/utku/took/happytosharemysteamapps/steamapps/common/Team Fortress 2"
DEF_CMD=("/home/utku/took/happytosharemysteamapps/steamapps/common/Team Fortress 2/hl2.exe" "-steam" "-dev" "-secure" "-game" "tf" "-w" "1366" "-h" "768")
PATH="/home/utku2/.local/share/Steam/compatibilitytools.d/Proton-4.15-GE-4/dist/bin/:/home/utku2/.local/share/Steam/ubuntu12_32/steam-runtime/amd64/bin:/home/utku2/.local/share/Steam/ubuntu12_32/steam-runtime/amd64/usr/bin:/home/utku3/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/home/utku3/.local/bin" \
    TERM="xterm" \
    WINEDEBUG="-all" \
    WINEDLLPATH="/home/utku2/.local/share/Steam/compatibilitytools.d/Proton-4.15-GE-4/dist/lib64//wine:/home/utku2/.local/share/Steam/compatibilitytools.d/Proton-4.15-GE-4/dist/lib//wine" \
    LD_LIBRARY_PATH="/home/utku2/.local/share/Steam/compatibilitytools.d/Proton-4.15-GE-4/dist/lib64/:/home/utku2/.local/share/Steam/compatibilitytools.d/Proton-4.15-GE-4/dist/lib/:/home/utku2/.local/share/Steam/ubuntu12_32/steam-runtime/pinned_libs_32:/home/utku2/.local/share/Steam/ubuntu12_32/steam-runtime/pinned_libs_64:/usr/lib/x86_64-linux-gnu/libfakeroot:/lib/i386-linux-gnu:/usr/local/lib:/usr/local/lib/libstrangle/lib32:/usr/local/lib/libstrangle/lib64:/lib/x86_64-linux-gnu:/lib32:/libx32:/lib:/home/utku2/.local/share/Steam/ubuntu12_32/steam-runtime/i386/lib/i386-linux-gnu:/home/utku2/.local/share/Steam/ubuntu12_32/steam-runtime/i386/lib:/home/utku2/.local/share/Steam/ubuntu12_32/steam-runtime/i386/usr/lib/i386-linux-gnu:/home/utku2/.local/share/Steam/ubuntu12_32/steam-runtime/i386/usr/lib:/home/utku2/.local/share/Steam/ubuntu12_32/steam-runtime/amd64/lib/x86_64-linux-gnu:/home/utku2/.local/share/Steam/ubuntu12_32/steam-runtime/amd64/lib:/home/utku2/.local/share/Steam/ubuntu12_32/steam-runtime/amd64/usr/lib/x86_64-linux-gnu:/home/utku2/.local/share/Steam/ubuntu12_32/steam-runtime/amd64/usr/lib:" \
    WINEPREFIX="/home/utku/took/happytosharemysteamapps/steamapps/compatdata/440/pfx/" \
    WINEESYNC="1" \
    SteamGameId="440" \
    SteamAppId="440" \
    WINEDLLOVERRIDES="steam.exe=b;mfplay=n;d3d11=n;d3d10=n;d3d10core=n;d3d10_1=n;dxgi=n;d3d9=n" \
    STEAM_COMPAT_CLIENT_INSTALL_PATH="/home/utku2/.local/share/Steam" \
    "/home/utku2/.local/share/Steam/compatibilitytools.d/Proton-4.15-GE-4/dist/bin/wine" steam.exe "${@:-${DEF_CMD[@]}}"

2019-10-29_19:24:52:660867031
Выход TF2

2019-10-29_19:31:59:209339350
вывод csgo

Также есть сценарий, автоматически сгенерированный PROTON_DUMP_DEBUG_COMMANDS=1 :

#!/bin/bash
#Run game or given command in environment

cd "/mnt/WD-green/common/Counter-Strike Global Offensive"
DEF_CMD=("/mnt/WD-green/common/Counter-Strike Global Offensive/csgo.exe" "-steam")
PATH="/home/utku2/.local/share/Steam/compatibilitytools.d/Proton-4.15-GE-4/dist/bin/:/home/utku2/.local/share/Steam/ubuntu12_32/steam-runtime/amd64/bin:/home/utku2/.local/share/Steam/ubuntu12_32/steam-runtime/amd64/usr/bin:/home/utku3/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/home/utku3/.local/bin" \
    TERM="xterm" \
    WINEDEBUG="-all" \
    WINEDLLPATH="/home/utku2/.local/share/Steam/compatibilitytools.d/Proton-4.15-GE-4/dist/lib64//wine:/home/utku2/.local/share/Steam/compatibilitytools.d/Proton-4.15-GE-4/dist/lib//wine" \
    LD_LIBRARY_PATH="/home/utku2/.local/share/Steam/compatibilitytools.d/Proton-4.15-GE-4/dist/lib64/:/home/utku2/.local/share/Steam/compatibilitytools.d/Proton-4.15-GE-4/dist/lib/:/home/utku2/.local/share/Steam/ubuntu12_32/steam-runtime/pinned_libs_32:/home/utku2/.local/share/Steam/ubuntu12_32/steam-runtime/pinned_libs_64:/usr/lib/x86_64-linux-gnu/libfakeroot:/lib/i386-linux-gnu:/usr/local/lib:/usr/local/lib/libstrangle/lib32:/usr/local/lib/libstrangle/lib64:/lib/x86_64-linux-gnu:/lib32:/libx32:/lib:/home/utku2/.local/share/Steam/ubuntu12_32/steam-runtime/i386/lib/i386-linux-gnu:/home/utku2/.local/share/Steam/ubuntu12_32/steam-runtime/i386/lib:/home/utku2/.local/share/Steam/ubuntu12_32/steam-runtime/i386/usr/lib/i386-linux-gnu:/home/utku2/.local/share/Steam/ubuntu12_32/steam-runtime/i386/usr/lib:/home/utku2/.local/share/Steam/ubuntu12_32/steam-runtime/amd64/lib/x86_64-linux-gnu:/home/utku2/.local/share/Steam/ubuntu12_32/steam-runtime/amd64/lib:/home/utku2/.local/share/Steam/ubuntu12_32/steam-runtime/amd64/usr/lib/x86_64-linux-gnu:/home/utku2/.local/share/Steam/ubuntu12_32/steam-runtime/amd64/usr/lib:" \
    WINEPREFIX="/home/utku/took/happytosharemysteamapps/steamapps/compatdata/730/pfx/" \
    WINEESYNC="1" \
    SteamGameId="730" \
    SteamAppId="730" \
    WINEDLLOVERRIDES="steam.exe=b;mfplay=n;d3d11=n;d3d10=n;d3d10core=n;d3d10_1=n;dxgi=n;d3d9=n" \
    STEAM_COMPAT_CLIENT_INSTALL_PATH="/home/utku2/.local/share/Steam" \
    "/home/utku2/.local/share/Steam/compatibilitytools.d/Proton-4.15-GE-4/dist/bin/wine" steam.exe "${@:-${DEF_CMD[@]}}"

Я не пробовал csgo, но tf2 работает и не имеет проблем с вакуумом под винным паром

@tuxutku, почему вы тестируете игры, в которых есть собственные порты Linux?

@tuxutku
При чем здесь Галлий 9?

Я спрашивал, потому что мне искренне любопытно. выйти из голосов против

@tuxutku, почему вы тестируете игры, в которых есть собственные порты Linux?

потому что игры с исходным кодом 1 не работают достаточно хорошо на Linux?
С галлием-амином дела обстоят хуже, но это не значит, что родные порты работают хорошо. Они очень плохи по сравнению с Windows-аналогами.
Новые карты опасной зоны CS: GO совершенно неиграбельны (~ 15 кадров в секунду) на amd a10-9620p + rx 540.
Когда в декорациях слишком много геометрии, частота кадров сильно падает во всех играх Source 1, которые я тестировал до сих пор (ядерный рассвет, cs: go, tf2, half-life 2, half-life 2 team death match).
left4dead2 - исключение, и на самом деле он достаточно хорошо использует графический процессор

предполагается, что «код плохой», а не «вызовы интерпретируются через GL, а не через vulkan», верно?

если у вас есть функциональная игра, ориентированная на вулкан, разве результаты не будут лучше в 100% случаев в исходной игре?

Учитывая, что это доступно извне из proton с помощью protontricks, я бы сказал, что этот запрос функции в значительной степени заменен.

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

Учитывая, что это доступно извне из proton с помощью protontricks, я бы сказал, что этот запрос функции в значительной степени заменен.

Сам Steam всегда отключает galliumnine при запуске игры или подтверждении кеша. Также нет флага протона, чтобы включить его, и он требует обновлений вручную.

Я обнаружил, что galliumnine часто не только быстрее, чем перевод wined3d по умолчанию (на r600), но и, кажется, исправляет проблемы с полноэкранным режимом для многих игр (например, верховный главнокомандующий FA). Добавление его к протону кажется довольно простым. учитывая автономную версию, я бы не сказал, что она должна быть «поддерживаемой» опцией, но было бы неплохо, если бы она была встроена в качестве обходного пути / улучшения.

я считаю, что это поддерживается, так как протон 5

РЕДАКТИРОВАТЬ: nvm я думаю о d9vk

я считаю, что это поддерживается, так как протон 5

РЕДАКТИРОВАТЬ: nvm я думаю о d9vk

Ага ... d9vk, к сожалению, не работает с r600. : /

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

Это легко исправить (у вас, ребята, уже есть множество форков и обходных путей, чтобы исправить это), Gallium Nine теперь имеет лучшую поддержку графического процессора (теперь работает с последними драйверами Intel) и дает прирост производительности в 1,5-2 раза по сравнению с DXVK и wined3d.

И вы уже получили кучу отчетов об играх, в которых говорилось об улучшении совместимости просто за счет использования Gallium Nine.

https://github.com/ValveSoftware/Proton/issues/173#issuecomment -499869941
https://github.com/ValveSoftware/Proton/issues/255#issuecomment -415997284
https://github.com/ValveSoftware/Proton/issues/355#issuecomment -415972910
https://github.com/ValveSoftware/Proton/issues/554#issue -354016973
https://github.com/ValveSoftware/Proton/issues/770#issue -354455950
https://github.com/ValveSoftware/Proton/issues/1073#issuecomment -473703760
https://github.com/ValveSoftware/Proton/issues/2704#issuecomment -518029014

Я знаю, что это, вероятно, не является для вас приоритетом, поскольку это относится только к старым играм, но да ладно, существует огромный каталог отличных игр, которые принесут пользу Gallium Nine.

Есть новости по этой теме? К сожалению,

Есть новости по этой теме? К сожалению,

Я использовал нормальный протон + галлий девять автономно. Ставил с помощью winetricks и отключил DXVK

Я использовал нормальный протон + галлий девять автономно. Ставил с помощью winetricks и отключил DXVK

Хорошо знать! Какую версию Proton вы использовали и как отключили DXVK? WineD3D мешал в последний раз, когда я это пробовал.

@ crt0mega galliumnine ("d3d9") всегда будет заменяться на dxvk или wined3d

Proton-5.9-GE-8-ST/proton:
            if "wined3d" in g_session.compat_config:
                dxvkfiles = ["dxvk_config"]
                wined3dfiles = ["d3d11", "d3d10", "d3d10core", "d3d10_1", "d3d9"]
            else:
                dxvkfiles = ["dxvk_config", "d3d11", "d3d10", "d3d10core", "d3d10_1", "d3d9"]
                wined3dfiles = []

это должно быть исправлено ...

или мы можем использовать Proton-5.9-GE-8-ST / dist / bin / wine без протона (и без игр Steam)
ps: настройка galliumnine:
WINE = "./ Proton-5.9-GE-8-ST / dist / bin / wine" WINEPREFIX = ~ / .steam / steam / steamapps / compatdata / 372000 / pfx / ./Proton-5.9-GE-8-ST/ protonfixes / winetricks --force galliumnine

Была ли эта страница полезной?
0 / 5 - 0 рейтинги

Смежные вопросы

Elkasitu picture Elkasitu  ·  3Комментарии

AwesamLinux picture AwesamLinux  ·  3Комментарии

ghost picture ghost  ·  3Комментарии

prototype99 picture prototype99  ·  3Комментарии

AwesamLinux picture AwesamLinux  ·  3Комментарии