Proton: [기능 요청]: 갈륨 나인 패치

에 만든 2018년 08월 22일  ·  123코멘트  ·  출처: ValveSoftware/Proton

많은 (오래된) 게임이 여전히 dx9를 사용합니다. AMD 및 Intel GPU 사용자를 위해 Proton용 Gallium Nine 패치를 사용하여 Linux에서 기본에 가까운 성능을 얻을 수 있습니까? 저는 Proton으로 Steam을 플레이하는 것과 비교하여 Gallium Nine 패치가 있는 일반 와인을 통해 Assassin's Creed 1과 같은 오래된 게임을 플레이하는 데 훨씬 더 나은 성능을 보고 있습니다.

Feature Request

가장 유용한 댓글

이것은 고려되어야 하는 문제이며, 우리는 환경 변수에 의한 핵(양성자 트릭과 같은)에 의존하지 않고 갈륨 9를 활성화할 수 있어야 합니다.

쉽게 고칠 수 있으며(이미 해결하기 위한 많은 포크와 해결 방법이 있음) Gallium Nine은 이제 더 나은 GPU 지원을 제공하며(현재 Intel 최신 드라이버와 함께 작동) DXVK 및 wined3d보다 1.5~2배 향상된 성능을 제공합니다.

그리고 이미 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

이것은 오래된 게임에만 적용되기 때문에 이것이 우선 순위가 아닐 수도 있다는 것을 알고 있지만 갈륨 나인의 이점을 얻을 수 있는 엄청난 게임 목록이 있습니다.

모든 123 댓글

이것은 훨씬 더 나은 옵션입니다. 그리고 그것이 DXVK에 병합된다는 소식을 들었습니다(결국) 그래서 우리는 9에서 12까지의 모든 D3D 버전을 다룰 것입니다. 이전 버전은 어쨌든 Vulkan의 기능이 필요하지 않습니다. 저는 D3D 8 게임이 소프트웨어 렌더러에서 실행될 수도 있다고 믿습니다. 최신 하드웨어에서 60FPS로.

매우 흥미로운! DXVK에 병합될 것임을 어디에서 찾았습니까?

제가 잘못 알고 있는 부분이 있어서 찾을 수가 없네요. 아마도 DXVK에 바로 병합되지 않고 함께 지원되거나 Wine에 병합될 것입니다. D3D=>OGL 번역 또는 이와 유사한 것을 대체하는 동일한 컨텍스트(놀랄 일이 아님)에서 언급된 이 두 프로젝트를 어렴풋이 기억합니다. 어쨌든 Vulkan 오버 헤드는 Gallium Nine 직접 접근 방식에 비해 무시할 만하다고 생각하지만 이점은 분명합니다. FOSS 드라이버가 있는 플레이어뿐만 아니라 모든 플레이어가 사용할 수 있습니다. 또한 Windows 자체로 더 나아가 Windows 사용자가 CPU 사용률이 더 좋아 더 나은 성능으로 게임을 실행하거나 일부 오래된 게임이 최신 Windows에서는 더 이상 작동하지 않지만 Wine에서는 작동하므로 전혀 실행할 수 있도록 할 수 있습니다.

VK9 또는 이와 유사한 것이 최상의 솔루션/구현이 될 것이라는 데 동의합니다. 그러나 내가 이해하는 한 VK9의 현재 버전은 여전히 ​​개념 증명이며 모든 게임에서 지원하는 것이 거의 없습니다. 간단한 directx9 테스트만 렌더링할 수 있습니다.

Gallium Nine 패치는 준비되어 있으며 많은 플레이어가 테스트를 잘 했으며 (거의) 기본 성능을 제공합니다. 패치가 이미 있기 때문에 이것을 구현하는 것은 다소 간단합니다. VK9가 성숙해질 때까지 당분간 모든 AMD/Intel 게이머에게 매우 환영할만한 추가 사항이 될 것입니다.

VK9는 완성된 지 몇 년이 지났고 d3d-pba의 오버헤드조차도 "무시할 수 있는" 것으로 간주될 수 있다고 생각합니다.
그래도 양성자(하지만 업스트림 와인도 포함)가 우선순위를 갖고 싶습니다.
첫 번째는 기본(갈륨) 또는 vulkan(dxvk)이고 다른 하나는 마지막이지만 가장 중요한 wined3d입니다(모든 GPU가 vulkan을 지원하는 것은 아니므로).

ps Nine은 인텔 사용자에게는 작동하지 않습니다.

수백 개의 Direct3D 9 게임이 여전히 Steam에서 플레이되고 있고 Gallium Nine이 기존의 d3d9 Wine보다 훨씬 더 효율적인 것으로 입증되었으므로 최소한 user_setting.py를 통해 옵션 기능이 되어야 합니다.

밸브 병합 VK9를 DXVK와 함께 사용하고 싶습니다. 따라서 균일한 벌칸 적용 범위를 갖습니다.

물론, 이상적인 세계에서. 그러나 VK9은 지금까지 단일 게임을 실행하지 않았으며 개념 증명 단계에 있습니다. 몇 가지 간단한 dx9 테스트를 실행할 수 있습니다. 또한 작업하는 사람은 취미 프로젝트로 간주하고 DXVK를 개발하는 사람만큼 많은 작업을 하지 않습니다. VK9를 사용할 준비가 되기까지 몇 년이 걸릴 수 있습니다. 그동안 충분히 테스트를 거쳐 완벽하게 완성된 AMD 사용자용 패치를 사용하지 않겠습니까?

Gallium 9 패치는 AMD 메사 사용자가 사용할 수 있어야 한다는 데 동의합니다. 그것은 메사의 일부이므로 사용을 허용하려면 와인 버전이 필요합니다.

동의. 그리고 누가 알겠습니까? 아마도 가까운 장래에 라데온시와 누보만이 그 혜택을 받는 것이 아니겠습니까?
https://www.phoronix.com/scan.php?page=news_item&px=Intel-Iris-Gallium

이것으로 많은 성공을 거두었고 패치가 잘 유지되었습니다. Mesa 패키지는 openSUSE를 기반으로 하며 모두 함께 작동합니다. 일반적으로 말더듬이 많은 게임에서 매끄럽게 매끄럽게 재생되는 반면 다른 게임은 검은색 화면만 나타납니다. 토글 가능하거나 두 가지 버전의 와인 또는 지원되는 게임에 제공되는 기본값이 있어야 합니다.

Gallium Nine은 제 경험상 환상적이었습니다. Proton에 포함된 것을 보는 것이 좋을 것입니다.

나는 개인적으로 모든 Vulkan 접근 방식에 투표합니다.

@shoober420 저도 결국 그걸 선호합니다. 그러나 작동하는 dx9에서 vulkan 변환 레이어로의 작업은 완료되기까지 몇 년이 걸립니다. AMD 사용자가 충분히 테스트되고 완전히 완성된 Gallium Nine 패치를 통해 기본 dx9 성능을 즐길 수 있도록 하지 않는 이유는 무엇입니까? AMD 사용자가 지금 기본 성능을 즐길 수 있도록 병합하기만 하면 됩니다.

@shoober420 우리 모두는 양성자에 대한 그 경로를 선호한다고 생각합니다. 논리적인 단계입니다. 우리는 밸브에게 d3d9의 vulkan 구현을 포기하도록 요구하지 않습니다. 우리는 오픈 갈륨 기반 드라이버를 사용하는 사람들이 이미 가지고 있는 것을 사용할 수 있도록 허용할 것을 요청합니다. Gallium 9는 이미 드라이버 스택의 일부입니다. 와인용 "Gallium nine 패치"는 기본 d3d9 API를 opengl로 건너뛰고 대신 API 호출을 GPU에 직접 공급합니다. API 번역으로 인한 성능 손실 방지.

@Mushoz @Xalphenos

나는 당신의 사람들이 지적하는 것을 보았습니다. 당신은 둘 다 옳습니다. VK9이 그렇게 멀리 있는 줄은 몰랐습니다. 그런 다음 더 많은 옵션에 대한 선택을 지지합니다. 언젠가는 AMD나 Intel을 사용할지도 모릅니다.

나는 openSUSE를 위해 와인, 스테이징, 9가지의 모든 변형을 만드는 작업을 했습니다. 기본적으로 https://github.com/sarnex/wine-d3d9-patches 에서 관련 패치 세트를 적용하고 정상적으로 빌드하면 됩니다. 따라서 와인을 두 번 컴파일하고 특정 바이너리에 대한 옵션을 제공해야 합니다.

참고로 4가지 맛의 와인을 모두 빌드하는 openSUSE/wine 패키지입니다.

  • 와인
  • 와인-나인
  • 와인 스테이징
  • 와인 스테이징 아홉

와인 스테이징과 관련된 양성자의 상황이 확실하지 않습니다. 아무도 그것에 도달하지 않고 Valve가 반대하지 않는다면 나는 이것이 찌르는 것을 줄 수 있지만 Steam은 실제로 세련미를 추가하기 위해 UI 옵션이 필요합니다.

당신이 생각하고 있는 것은 #22입니다. 자신의 런타임을 추가하는 메커니즘이 어떻게 든 있을 수 있지만 현재로서는 알 수 없습니다.

그러나 나에게 와인과 양성자는 우아한 대체 메커니즘이 있어야 합니다. vulkan에서 갈륨까지, opengl까지. 시스템에서 사용할 수 있는 가장 효과적인 대체 방법에 따라.

확실히 관련이 있지만 이 요청은 와인 업스트림이 병합하지 않는 것과 같은 이유로 항상 선택 사항이어야 합니다... 모든 플랫폼에서 작동하지 않으며 관련 Mesa 드라이버를 사용할 수 있는 카드의 하위 집합에서만 작동합니다. 이것은 이 리포지토리에서 와인에 적용된 다른 변경 사항과 다소 다릅니다(이전 카드 제외 제외). #22는 Wine-nine 빌드를 가진 누군가가 그것을 전환할 수 있도록 허용하지만, 이 문제는 공식 빌드의 일부로 갖는 것에 관한 것입니다.

예 .. 그리고 어떤 드라이버가 사용되는지, 어떤 하드웨어에서 확인하고 하루에 호출하는 것이 어려운지 알 수 없습니다(어쨌든 vulkan 또는 opengl에 대해 동일)

나도 아니라고, 아니라고 말한 적 없어. 내가 제안하는 것도 아니고 이 문제에 대한 것도 아닌 양성자 외부의 사용자 정의 빌드를 선택하는 것에 관한 #22에 응답하는 것입니다.

ValveSoftware/wine(3.7)과 wine/wine(3.7)

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은 문제가 아니며 하드웨어 호환성도 아닙니다(_특히_ 지난 인텔 소문 이후).
적어도 현재로서는 실제 문제와 관련하여 가장 .. 가장 먼저 인식이 부족한 이유에 대한 내 링크를 볼 수 있습니다.
(누가 아는 한, 아마도 그들은 이미 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에서 드라이버와 bam으로 구둣주물만 하면 Gallium 9 및 Mesa의 OpenGL을 포함하여 지원되는 모든 상태 추적기를 얻을 수 있습니다. 셰이더 바이트코드 수명 주기는 game->TGSI->NIR->SPIRV의 DX9 HLSL 바이트코드입니다.

이것이 "해결책"이라고 볼 수 있는 유일한 것은 VK9가 준비되기 전에 Nvidia 카드에 대한 일시적인 임시방편입니다. 이것은 확실히 AMD에서 더 빠르지 않을 것입니다.

@jerbear64 Gallium Nine은 적어도 amdgpu 드라이버에서 볼 때 이미 꽤 전투 테스트를 거쳤습니다. 나는 종종 이것이 DXVK의 경우에도 처음부터 수행될 수 있다고 생각했습니다. Mesa 내부의 상태 추적기일 수도 있고 닫힌 드라이버에 대해 끝에 ZINK와 같은 것을 작성하거나 기본 하드웨어를 직접 사용할 수 있습니다. 가능한 곳. 그래도 불만은 없습니다... :)

모든 사람이 메사를 사용하는 것은 아닙니다.

2018년 9월 26일 수요일, 20:35 Alex Fuller, 알림 @github.com 작성:

@jerbear64 https://github.com/jerbear64 갈륨나인은 이미 꽤
적어도 amdgpu 드라이버에서 내가 본 것에서 전투 테스트를 거쳤습니다. 나는 ~였다
종종 이것이 DXVK를 사용하더라도 처음부터 할 수 있다고 생각합니다.
Mesa 내부의 상태 추적기일 수도 있고
닫힌 드라이버의 끝에 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을 구현하고 있으므로 direct3d 11에서 direct3d9를 다시 구현하면 모든 이전 direct3d 버전이 DXVK를 통해 실행할 수 있습니다.

@jerbear64 거꾸로 들리네요. 9는 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로 제한됩니다. 이는 셰이더 모델 1.x와 함께 D3D9를 사용하는 게임이 다음 릴리스에서 DXVK 위에서 실행될 수 있음을 의미합니다. 이것의 단점은 dgVoodoo가 오픈 소스가 아니라는 것입니다.

그만한 가치가 있기 때문에 다른 Flatpak 응용 프로그램의 수요로 인해 이제 Steam Flatpak에서 Gallium Nine의 Mesa 부분에 대한 지원을 받았습니다.

@jerbear64 거꾸로 들리네요. 9는 nVidia 독점에서만 쓸모가 없습니다. AMD에서는 주로 Mesa를 사용합니다. Intel은 또한 새로운 Gallium3D 드라이버를 구축하고 있으므로 이것이 미래의 어느 시점에서 Intel+nouveau+AMD 솔루션이 될 것입니다.

Nvidia 사용자에게는 쓸모가 없지만 호환성이 깨지지는 않습니다. 가능한 경우 Nvidia가 아닌 오픈 소스 그래픽 사용자에게 무언가를 주는 것은 괜찮습니다.

잠깐, 그렇지 않아? 나는 Wine 부분(여기에서 논의됨)이 그랬다고 생각했습니다. 어쨌든 기본적으로 사용되지 않더라도 이것을 빌드하고 배송하는 것이 좋을 것입니다.

잠깐, 그렇지 않아? 나는 Wine 부분(여기에서 논의됨)이 그랬다고 생각했습니다. 어쨌든 기본적으로 사용되지 않더라도 이것을 빌드하고 배송하는 것이 좋을 것입니다.

게임을 시작할 때 갈륨나인이 존재하는지 감지하고 필요한 경우 다른 구현으로 리디렉션합니다.

@shanefagan 비 갈륨 9 지원 GPU는 미래에 소수일 수 있습니다.
Intel은 향후 모든 GPU에서 Gallium 3d를 지원하는 데 관심을 표명했습니다.

@hungrymonkey 내 생각에 @shanefagan 이 이와 반대되는 주장을 했다고 생각하지 않습니다. 또한 독점 드라이버가 있는 nVidia GPU는 여전히 Linux 데스크톱 사용량의 막대한 부분을 차지합니다.

@nanonyme 갈륨 9는 nvidia 독점 드라이버 또는 사용에 전혀 영향을 미치지 않습니다. 사용 중인 드라이버가 g9를 사용할 수 있는지 확인하고, 그렇지 않으면 사용하지 않습니다. 특히 mesa에 g9가 활성화되어 있는지 확인한 다음 사용 중인 메사 드라이버를 확인합니다. 사용 중인 메사 드라이버가 없으면 문자 그대로 g9 기능을 사용할 수 없으며 완전히 무시됩니다.

@GloriousEggroll 같은 언어로 말하고 있지 않은 것 같습니다. 이것은 단지 몇 개의 게시물 위로 설명되었습니다.

패치에 대한 좋은 참고 사항은 개발자가 최대 3일 전에 작업을 통해 WINE 패치를 최신 상태로 유지해 왔다는 것입니다. 적어도 빌드하고 dx3d9 성능 문제가 있는 일부 시스템의 설정으로 선택하는 것이 좋을 것이라고 말하고 싶습니다(예: SC2와 같은 게임을 크게 수정하지 않은 경우).

어쨌든 링크가 보이지 않았기 때문에 패치를 링크하는 것이 좋습니다 https://github.com/sarnex/wine-d3d9-patches

@Mushoz 지금쯤 언리얼 토너먼트를 운영하고 있습니다. 2019년에는 _아마도_ 완전히 작동할 것입니다. 여기 에 로드맵이

이미 사용 중이고 개발이 과중한 전환 계층을 위해 사용할 준비가 된 기본 드라이버 및 도구를 건너뛰는 것은 현명하지 않습니다. 그렇다면 이미 준비된 Gallium Nine은 AMD 사용자를 위한 옵션으로 제공되어야 합니다. 한 번/VK9가 도착하면 여전히 옵션으로 남을 수 있습니다.

여러 코드 경로가 잠재적으로 지원 게임을 더 어렵게 만드는 주요 단점을 볼 수 있습니다. 다시 말하지만, 테스트 결과는 지금도 GPU 벤더 간에 적용되지 않습니다.

VK9는 amdgpu가 아닌 장치/GCN 이전 GPU에서는 작동하지 않습니다. 반면에 Gallium-Nine은 오래된 r300g에서 실행될 수 있으며 심지어 내 VEGA10과 같은 GPU까지 실행할 수 있습니다. 그러나 예, 내 친구들 중 일부가 여전히 의존하고 있는 이 오래된 r600g 구동 VLIW GPU는 더 이상 사용되지 않는 것으로 간주됩니다.

D3D9 자체처럼.

여러 코드 경로가 잠재적으로 지원 게임을 더 어렵게 만드는 주요 단점을 볼 수 있습니다. 다시 말하지만, 테스트 결과는 지금도 GPU 벤더 간에 적용되지 않습니다.

글쎄, 그것이 효과가 있으면 이점이 있고 그렇지 않으면 무시할 수 있습니다. 기본값은 여전히 ​​WINE의 구현으로 만들 수 있지만 사용자가 시도하려는 경우 환경 변수로 설정할 수 있습니다. DXVK 대신 WINE 자체에서 더 나은 성능을 얻으면 이미 이 작업을 수행하므로 구성을 위한 도구 문제가 아닙니다. 그들은 그것을 제자리에 고정하기만 하면 됩니다. 그들은 패치를 만드는 사람을 고용하여 마지막 10%를 묶어 거기에 얻을 수도 있습니다.

여기서 차이점은 WineHQ는 게임을 판매하지 않으며 환불을 해야 할 책임이 있다는 것입니다.

그래서 화이트리스트가 있는 줄 알았는데...

작동 모드의 복잡한 분기가 있는 경우 화이트리스트가 작동하지 않습니다.

"복잡한"

작동 모드의 복잡한 분기가 있는 경우 화이트리스트가 작동하지 않습니다.

글쎄, 게임 성능이 좋지 않은 경우 사용자가 그것을 시도하려는 경우에만 활성화되는 옵션이 될 수 있습니다.

작동 모드의 복잡한 분기가 있는 경우 화이트리스트가 작동하지 않습니다.

글쎄, 게임 성능이 좋지 않은 경우 사용자가 그것을 시도하려는 경우에만 활성화되는 옵션이 될 수 있습니다.

나에게 충분히 공평하게 들린다.

먼저 Steam 런타임에 libd3dadapter9-mesa를 가져와야 한다고 생각합니다.

먼저 Steam 런타임에 libd3dadapter9-mesa를 가져와야 한다고 생각합니다.

libd3dadapter9는 어떻게 작동합니까? 나는 GalliumNine이 메사에 적절하고 WINE에 대한 패치가 그것을 가리키고 있다는 것을 알고 있습니다. 18.10 현재 Ubuntu에 있다는 것을 보았지만 실제로 해당 라이브러리를 사용한 적이 없습니다.

libd3dadapter9는 어떻게 작동합니까? 나는 GalliumNine이 메사에 적절하고 WINE에 대한 패치가 그것을 가리키고 있다는 것을 알고 있습니다. 18.10 현재 Ubuntu에 있다는 것을 보았지만 실제로 해당 라이브러리를 사용한 적이 없습니다.

이는 Wine의 opengl32.dll.so가 예를 들어¹와 같은 일반적인 OpenGL 상태 추적기를 사용하는 것처럼 Mesa의 D3D9 상태 추적기를 처리하는 것입니다.
편집: 죄송합니다. libd3dadapter9를 Wine용으로 빌드된 DLL과 혼동했습니다. 그날은 커피가 부족했다. 문제의 라이브러리는 Mesa용 D3D9 상태 추적기를 구현합니다. 단순화: WineD3D 또는 VK9와 같은 추가 번역 레이어 없이 기본 D3D9 지원을 제공합니다. 관심이 있는 경우 이 프레젠테이션을 살펴보십시오 .


¹: 경고: 답변 정확하지

--no-steam-runtime을 사용하여 로컬 아치 Linux 빌드로 9개의 패치로 양성자를 빌드할 수 있었습니다. 내가 지금까지 테스트한 유일한 게임은 Valkyria Chronicles 1이며 이 로컬 빌드에서 이상하게 작동했습니다. 예를 들어 RX 480은 설정에서 R9 290으로 감지되었으며, 때때로 제대로 작동하지 않는 컨트롤과 Valkyria Chronicles 구성 도구를 통해 설정을 설정했습니다. 전혀 저장되지 않았습니다.

이러한 문제는 9개의 패치가 아닌 --no-steam-runtime으로 구축되는 양성자와 관련이 있을 수 있습니다.

https://github.com/sarnex/wine-d3d9-patches/blob/wine-d3d9-3.16/wine-d3d9.patch 의 원본 패치는 configure.ac의 컨텍스트에 대한 수정만 필요했습니다 . https://gist 참조 행만 있습니다.

https://github.com/sarnex/wine-d3d9-patches/blob/wine-d3d9-3.16/d3d9-helper.patch를 먼저 적용하고 두 가지를 모두 적용한 후 와인 폴더에서 autoreconf 를 실행해야 합니다. 패치.

또한 다음 파일의 wine32 구성에 -with-d3d9-nine-module=/usr/lib32/d3d/d3dadapter9.so 를 추가해야 했지만 빌드 환경을 올바르게 설정하지 않았기 때문일 수 있습니까? https://github.com/ValveSoftware/Proton/blob/83871c7bf93b785b23b987956b7cc3608d6998b3/build/makefile_base.mak#L713 -L726

또한 각 pfx에 대해 갈륨 9 트로프 와인cfg를 활성화해야 함을 잊지 마십시오.

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

이것은 좋은 소식입니다! 초기 좌절에도 불구하고 다소 기능적인 빌드를 갖는 것은 상당한 진전입니다. 제가 코딩에 정통하지 않은데 자세히 설명해 주시겠습니까? --no-steam-runtime 인수로 빌드한 이유는 무엇입니까? 당신이 만든 Proton은 Steam 클라이언트에서 작동하지 않습니까? 원인, Proton의 요점은 Windows 버전 대신 기본 Steam 클라이언트로 Steam DRM이 필요한 Steam 게임을 실행하는 것입니다.

@raetiacorvus

Steam에 상당히 많은 게임 컬렉션이 있습니다. 더 많은 게임을 테스트해야 하는 경우 알려주시면 준비하도록 하겠습니다.

지금까지 테스트한 유일한 게임은 Valkyria Chronicles 1이며 이 로컬 빌드에서 이상하게 작동했습니다. 예를 들어 RX 480은 설정에서 R9 290으로 감지되었습니다.

이것은 정상적인 Gallium Nine 동작이며, 내 RX 580은 내 wine-staging-nine 빌드에서 동일한 작업을 수행합니다.

내가 만난 문제 중 갈륨 9와 관련된 문제는 없지만 --no-steam-runtime 또는 게임 자체로 인해 발생한 것 같습니다.

@rea987 --no-steam-runtime 는 스팀 런타임 도커 컨테이너에서 패치된 라이브러리 대신 로컬 라이브러리에 대해 양성자가 빌드되었음을 의미합니다. 이것은 여전히 ​​유효한 증기 호환성 도구이며 밸브가 제공하는 양성자 방출을 대체하는 데 사용할 수 있습니다. 지금까지 한 가지 문제는 런타임에서 패치된 컨트롤러 매핑이 부족하여 Valkyria Chronicles에서 문제가 발생했다는 것입니다. 와인에서 컨트롤러를 올바르게 매핑하는 데 사용할 수 있는 몇 가지 도구를 사용하여 이 문제를 해결할 수 있습니다.

@raetiacorvus Proton 컴파일 가이드를 위한 Gallium Nine을 @ValveSoftware 가 분기 중 하나와 병합하도록 pull 요청을 하는 것은 @raetiacorvus 테스트를 위해 더 많은 게임을 제공

나는 패치로 Proton의 포크를 만들었습니다.

https://github.com/popsUlfr/Proton ( proton_3.16_gallium_nine_extras 분기를 확인하고 readme를 따르십시오)

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

그것은 또한 스팀 런타임과 함께 작동합니다. 이 약간 못생긴 메사 블록을 추가해야 했습니다. https://github.com/popsUlfr/Proton/commit/0397af03059c32a6ac5e0213d39769e33f2914df

카드가 지원하는 경우 Gallium nine을 쉽게 활성화하는 데 사용할 수 있는 PROTON_USE_GALLIUM_NINE=1 환경 변수를 추가했습니다(winecfg의 스테이징 탭을 통해 활성화할 수도 있음)

특징 :

  • 갈륨 나인 분명히
  • 패스 오브 엑자일 dx11 패치 : https://bugs.winehq.org/show_bug.cgi?id=42695
  • Vulkan 지원이 없는 경우 강제로 wined3d11 : #1749
  • 기본적으로 ffmpeg를 활성화하고 FAudio를 빌드합니다. #2082
  • GLSL을 토글하여 GLSL 셰이더를 비활성화하고 대신 ARB 셰이더를 사용하여 wined3d로 말더듬을 줄입니다.

테스트할 빌드는 다음과 같습니다.
~ Proton_3.16-5_Gallium_Nine_Extras.tar.xz ~
~ 양성자 3.16-5 갈륨 나인 엑스트라 0.1.0 ~
~ 양성자 3.16-5 갈륨 나인 엑스트라 0.1.1 ~
~ 양성자 3.16-6 갈륨 나인 엑스트라 0.1.1 ~
~ 양성자 3.16-6 갈륨 나인 엑스트라 0.1.2 ~
양성자 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 와인과 아무것도 될 겁니다. 그래서 이것은 공식 proton의 README에 오류가 있거나 내 시스템에서 그렇게 행동하는 것 같습니다. 잘 모르겠습니다.

잘했어 @popsUlfr!

포크의 GitHub 페이지에 일반 32비트, 64비트 및/또는 멀티아키 릴리스가 있습니까?

노력과 포크에 감사드립니다!

@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 게임에서 사용하도록 선택했지만 PROTON_USE_GALLIUM_NINE으로 Gallium Nine을 활성화하면 A Hat in Time 또는 Dragon Age: Origins와 같은 게임이 작동하지 않는 것 같습니다. =1(깨끗한 접두사 포함), 창이 나타나지도 않습니다. PROTON_USE_GALLIUM_NINE=0을 사용하면 제대로 실행됩니다.

AMD Radeon Vega 56을 소유하고 있습니다. 성공적으로 설치하고 모든 Windows 게임에서 사용하도록 선택했지만 PROTON_USE_GALLIUM_NINE으로 Gallium Nine을 활성화하면 A Hat in Time 또는 Dragon Age: Origins와 같은 게임이 작동하지 않는 것 같습니다. =1(깨끗한 접두사 포함), 창이 나타나지도 않습니다. PROTON_USE_GALLIUM_NINE=0을 사용하면 제대로 실행됩니다.

동일한 GPU 및 동일한 결과입니다. 게임(디스아너드, 데드 스페이스)은 갈륨으로 시작하지 않습니다.

@Mastergatto , @archfan Gallium Nine 지원 Mesa 드라이버를 설치하셨습니까?

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

예, 저는 Arch에 있고 AUR에서 mesa-git을 설치했습니다. 갈륨 나인이 활성화된 상태로 제공됩니다.

@archfan 좋아, 내일 갈륨 나인을 지원하는 오래된 AMD 노트북에서 시도해 볼 것입니다.

예, 적어도 ArchLinux의 AMD 카드에 대해서는 메사 패키지에서 Gallium Nine이 기본적으로 활성화되어 있습니다. 또한 갈륨 나인이 의도한 대로 작동하는 와인 준비 갈륨도 있습니다.

갈륨 9를 켠 상태에서 실행했을 때의 출력을 볼 수 있습니까?
따라서 게임의 시작 옵션에서 다음을 추가하십시오.

PROTON_DUMP_DEBUG_COMMANDS=1 PROTON_USE_GALLIUM_NINE=1 %command%

게임을 실행합니다.
이것은 일부 양성자 스크립트를 /tmp/proton_<username> 떨어뜨릴 것입니다.
./run 를 실행하여 출력을 확인합니다.

또한 확인하기 위해 다른 양성자로 전환하고 스팀을 다시 시작하십시오. 이제 갈륨 9 양성자로 전환합니다.

편집: 이 스레드를 오염시키지 않으려면 여기에서 논의하는 것이 더 좋을 것이라고 생각합니다. https://github.com/popsUlfr/Proton/issues/2

또한 이것이 귀하의 희망을 얻었고 즉시 작동하지 않는 경우 죄송합니다. 나는 이것을 로컬에서 유지했고, 갈륨 9 부분은 amd에서 테스트할 수 있는 경우에 더 '만약에'였습니다. 나는 이 토론이 더욱 두드러지는 것을 보고 어쨌든 그것을 공유하기로 결정했으며 양성자에서 갈륨 9 지원에 대해 뭔가를 얻는 것이 유용할 수 있습니다. :)
구운 다른 기능도 유용할 수 있으므로...

Gallium Nine은 https://github.com/dhewg/nine 과 함께 Proton에서 작동합니다.

당연히 이것은 Steam 오버레이를 깨뜨리지만 그렇지 않으면 잘 작동합니다.

Gallium Nine은 https://github.com/dhewg/nine 과 함께 Proton에서 작동합니다.

당연히 이것은 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를 사용하고 있습니까? 해당 Ubuntu/Mint 버전에 대한 oibaf의 Mesa 드라이버는 12월/1월 이후 Gallium Nine에 대해 손상되었습니다. 나는 같은 문제가 있었고 Ubuntu Mate 19.04로 전환했으며 이제 작동합니다.

@rea987 저는 우분투 19.04를 사용하고 있습니다. 다시 시도하겠습니다. 아니 도움이되지 않습니다. 또 뭐했어? 어떤 실행 인수가 있고 어떤 게임이 효과가 있습니까?

@tatsujb 솔직히 별로.

  • 12월부터 Oibaf 의 Mesa 드라이버의 Gallium Nine 호환성이 깨졌기 때문에 타사 Mesa PPA를 피
  • libd3dadapter9-mesamesa:i386 이 모두 설치되어 있는지 확인했습니다.
  • 수동으로 /usr/bin/winetricks를 최신 버전으로 교체: https://wiki.winehq.org/Winetricks
  • 삭제됨 ~/.cache/winetricks
  • Protontricks를 통해 Gallium Nine Standalone(최신)을 다시 설치했습니다.

@rea987

네 그게 트릭이었습니다. 그때부터 알아냈어요, 감사합니다!

갈륨나인과 d9vk btw가 모두 있으면 좋을 것입니다. 나는 오늘 모자에 그것들을 비교했고 갈륨나인은 훨씬 더 잘 실행되고(20% 이상 더 높은 fps) 새로운 지역을 처음 방문할 때 더듬거리지 않습니다. 둘 다 있으면 일부 타이틀이 둘 중 하나와 중단될 수 있으므로 주어진 directx9 게임을 좋은 성능으로 실행할 가능성이 더 높아집니다.

이상적인 세계에서 렌더러는 기본에서 vulkan으로, opengl로 우아하게 폴백합니다(또는 d9vk가 궁극적으로 어떤 본질적인 이점을 가지지만 여전히 유지되어야 하는 경우 처음 두 개의 우선 순위를 전환합니다).
대신 Valve(그리고 심지어 Nine에 대한 모든 조소를 받은 코드위버들까지)는 모든 것과 부엌 싱크대를 작동시키는 것보다 최신 카드를 위한 멋진 "충분한" 정원을 만드는 데 초점을 맞춘 것 같습니다. 그들은 vulkan이 전혀 없는 카드에 대한 자동 검사 를 추가하지도 않습니다.

여기 내 20센트가 있습니다.

이제 Gallium Nine 독립 실행형이 있으므로 와인용 패치가 더 이상 필요하지 않기 때문에 사용하기가 매우 쉽습니다. (1) 배포판의 패키지 관리자에서 mesa-libd3d9를 설치합니다. (2) winetricks 또는 설치 프로그램 스크립트를 사용하여 와인 접두어에 Nine을 설치합니다.

어느 것이 "더 나은" 옵션인지와 관련하여: 저는 여기서 화염 전쟁을 시작할 생각이 없으므로 지금까지 내가 찾은 것을 공유하겠습니다: https://github.com/Joshua-Ashton/d9vk/issues/ 95#issuecomment -492651741 ― 물론 그것은 내 시스템에서 Nine이 지금까지 시도한 타이틀에서 더 빨랐다는 것을 의미합니다. 이는 다른 사람들의 컴퓨터에서 작동하는 방식을 대표하지 않을 수 있습니다. 편집: Nine은 현재 NVidia 사용자를 위한 옵션이 아니지만 AMD(radeonsi) 및 Intel(iris)에서 합리적으로 잘 작동하며 zink가 충분히 성숙해지면 NVidia에서 개선될 것입니다.

나인 독립 실행형은 정말 절대적으로 사용하는 케이크워크입니다.
어쨌든 * 매번 * 개발자에게 이것을 지적하면 귀머거리가 되는 것 같습니다.
나는 아마도 논의가 문 뒤에서 일어날 수 없었는지/IRC를 불태우고 싶지 않은지 모르겠습니다. 하지만 그들이 *현재* IRC의 상황을 인정하게 하기 위해 무슨 말을 더 해야 할지 모르겠습니다. 50년 전 프로젝트에 대해 그들이 마음속에 품고 있는 풍자적 이미지가 아니라 빌어먹을 코드.

Nine은 현재 NVidia 사용자를 위한 옵션이 아니지만 AMD(radeonsi) 및 Intel(iris)에서 합리적으로 잘 작동하며 zink가 충분히 성숙되면 NVidia에서 개선될 것입니다.

r600g에서도 잘 돌아갑니다. r600g에서 지원하는 GPU에는 Vulkan 지원이 없습니다.

지금은 nvidia에서 418이 설치된 우분투와 Nouveau가 설치된 우분투 사이를 전환하여 메사와 갈륨 9를 활성화할 수 있습니다. nouveau에서 실행할 수 있는 기본 Linux 게임의 성능은 허용 가능하며 wine-gallium-nine 게임은 정말 잘 실행됩니다.

그러나 분명히 나는 ​​mes가 Nvidia도 지원하기를 기다릴 수 없습니다.

나는 이것이 지금 D9VK에 의해 해결되었다고 생각합니다. SC2 및 몇 가지 다른 게임으로 테스트했는데 매우 잘 작동합니다. 향후 DXVK에 통합되고 패치가 Proton에도 적용되기를 바랍니다.

d9vk는 여전히 갈륨 9보다 성능이 훨씬 떨어지지만 내장된 d9vk 지원만으로도 이미 갈륨 9보다 기존 양성자 설치에 통합하기가 더 어렵기 때문에 굉장할 것입니다.

또한 d9vk 배송의 또 다른 까다로운 부분은 최신 메사가 필요하다는 것입니다. 최신 릴리스뿐만 아니라 mesa-git을 기반으로 합니다. 따라서 다양한 배포판에서 액세스할 수 있도록 하려면 mesa-git을 함께 제공하거나 사용자에게 배포판용으로 mesa-git을 얻는 방법을 알아내도록 지시해야 할 수도 있습니다.

@shanefagan 아니요, d9vk는 9보다 훨씬 훨씬 느립니다. 이전 게시물에서 찾은 결과를 참조하세요.

설치하기 쉬운 독립 실행형 버전이 있습니다. 아마도 Proton과 함께 제공되고 인수로 활성화될 수 있습니다. D9VK는 훌륭하지만 다른 사람들이 말했듯이 더 느리고 종종 최첨단 드라이버를 사용합니다. Winetricks를 통해 Gallium을 설치하는 것은 효과가 있지만 통합 옵션이 있으면 정말 좋을 것입니다.

독립 실행형: https://github.com/iXit/wine-nine-standalone

안녕하세요!~ Gallium Nine Standalone이 설치된 게임을 시작할 때 4.11-6에서 자동 충돌을 경험하는 사람이 있습니까?

@Bryophyllum 동일, 양성자 트릭을 통해 갈륨나인을 설치한 후 게임이 실행되지 않습니다.
최악의 부분은 처음부터 갈륨나인이 작동 중인지 여부를 쉽게 알 수 있는 방법이 없다는 것입니다.

실제로 몇 가지 시도와 오류 후에 다음과 같이 작동했습니다.

갈륨 9를 켠 상태에서 실행했을 때의 출력을 볼 수 있습니까?
따라서 게임의 시작 옵션에서 다음을 추가하십시오.

PROTON_DUMP_DEBUG_COMMANDS=1 PROTON_USE_GALLIUM_NINE=1 %command%

게임을 실행합니다.
이것은 일부 양성자 스크립트를 /tmp/proton_<username> 떨어뜨릴 것입니다.
./run 를 실행하여 출력을 확인합니다.

또한 확인하기 위해 다른 양성자로 전환하고 스팀을 다시 시작하십시오. 이제 갈륨 9 양성자로 전환합니다.

편집: 이 스레드를 오염시키지 않으려면 여기에서 토론하는 것이 더 좋을 것 같습니다. popsUlfr#2

또한 이것이 귀하의 희망을 얻었고 즉시 작동하지 않는 경우 죄송합니다. 나는 이것을 로컬에서 유지했고, 갈륨 9 부분은 amd에서 테스트할 수 있는 경우에 더 '만약에'였습니다. 나는 이 토론이 더욱 두드러지는 것을 보고 어쨌든 그것을 공유하기로 결정했으며 양성자에서 갈륨 9 지원에 대해 뭔가를 얻는 것이 유용할 수 있습니다. :)
구운 다른 기능도 유용할 수 있으므로...

Steam에서 실행하면 "드라이버 설치 중" 또는 이와 유사한 팝업이 표시되고 게임을 시작하기 전에 갈륨나인이 비활성화됩니다.
그러나 덤프된 스크립트를 통해 게임을 실행해도 갈륨나인이 비활성화되지 않고 게임이 실행됩니다.

@tuxutku Proton 4.11에서 Gallium Nine Standalone을 시도한 일부 게임은 이 문제에 관계없이 자동으로 충돌하거나 평소와 같이 시작되지만 Wine의 DX9에서 OpenGL로의 변환 레이어가 대신 사용됩니다. Gallium Nine Standalone이 설치된 4.2-9에서 모두 잘 작동합니다.

최악의 부분은 처음부터 갈륨나인이 작동 중인지 여부를 쉽게 알 수 있는 방법이 없다는 것입니다.

좀 빠지는. CLI에서 Steam 클라이언트를 실행하면 게임이 시작될 때 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 클라이언트가 갈륨나인을 비활성화하는 것에 대한 새 문제를 열겠습니다. 다른 게임에서 이 문제가 발생합니다.

@tuxutku님 , 이 기능 요청은 새로운 동작에 대해 논의하기에 적합한 장소입니다. Proton에 d9vk가 추가된 것과 동시에 변경 사항이 발생한 것으로 들리며 Proton이 이를 관리하는 부작용일 수 있습니다.

최악의 부분은 처음부터 갈륨나인이 작동 중인지 여부를 쉽게 알 수 있는 방법이 없다는 것입니다.

좀 빠지는. CLI에서 Steam 클라이언트를 실행하면 게임이 시작될 때 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 가 게시 되었는지 확인 하는 것만큼 쉽지 않습니다.
예를 들어 dumped ./run 명령에서 2013 툼 레이더 게임을 시작할 때 런처는 게임이 아닌 directx9를 사용하기 때문에 행을 게시합니다. 갈륨나인으로 게임을 하려면 regedit레지스터를 조정해야 했습니다.

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가 실행되고 와인 스팀에서 vac 문제가 없습니다

@tuxutku 네이티브 Linux 포트가 있는 게임으로 테스트하는 이유는 무엇입니까?

@tuxutku
이것은 갈륨 9와 어떤 관련이 있습니까?

정말 궁금해서 여쭤봤습니다. 반대 투표를 종료

@tuxutku 네이티브 Linux 포트가 있는 게임으로 테스트하는 이유는 무엇입니까?

소스 1 게임이 Linux에서 충분히 잘 실행되지 않기 때문에?
그들은 갈륨나인으로 더 나빴지만 그것이 네이티브 포트가 잘하고 있다는 것을 의미하지는 않습니다. 그들은 Windows 대응 물에 비해 매우 나쁩니다.
CS:GO의 새로운 위험 지역 맵은 amd a10-9620p + rx 540에서 바로 재생할 수 없습니다(~15fps).
풍경에 지오메트리가 너무 많으면 지금까지 테스트한 모든 소스 1 게임(nuclear dawn, cs:go, tf2, half-life 2, half-life 2 팀 데스 매치)에서 프레임 속도가 크게 떨어집니다.
left4dead2는 예외이며 실제로 GPU를 충분히 활용합니다.

"호출이 vulkan이 아닌 GL을 통해 해석되고 있다"가 아니라 "코드가 잘못되었습니다"라는 가정이 맞습니까?

기능적인 vulkan-native 게임이 있다면 결과가 네이티브에서 100% 더 좋지 않을까요?

이것이 protontricks가 있는 proton에서 외부에서 사용할 수 있다는 점을 감안할 때 이 기능 요청이 상당히 대체되었다고 말할 수 있습니다.

일일이 수동으로 수정할 수 있다면 여기에서 문제의 절반을 닫을 수 있습니다.

이것이 protontricks가 있는 proton에서 외부에서 사용할 수 있다는 점을 감안할 때 이 기능 요청이 상당히 대체되었다고 말할 수 있습니다.

Steam 자체는 게임을 시작하거나 캐시를 확인할 때 항상 갈륨나인을 비활성화합니다. 또한 활성화하는 양성자 플래그가 없으며 수동 업데이트가 필요합니다.

갈륨나인이 기본 wined3d 번역(r600)보다 빠를 뿐만 아니라 많은 게임(예: FA 최고 사령관)의 전체 화면 문제를 해결하는 것으로 보입니다. 양성자에 추가하는 것은 꽤 쉬울 것 같습니다. 독립 실행형 버전이 주어지면 "지원되는" 옵션이 되어야 한다고 말하지는 않겠지만 해결 방법/향상 기능으로 내장되어 있으면 좋을 것입니다.

나는 이것이 proton 5부터 지원된다고 믿습니다.

편집 : nvm d9vk를 생각하고 있습니다.

나는 이것이 proton 5부터 지원된다고 믿습니다.

편집 : nvm d9vk를 생각하고 있습니다.

예 ... d9vk는 불행히도 r600에서 작동하지 않습니다. :/

이것은 고려되어야 하는 문제이며, 우리는 환경 변수에 의한 핵(양성자 트릭과 같은)에 의존하지 않고 갈륨 9를 활성화할 수 있어야 합니다.

쉽게 고칠 수 있으며(이미 해결하기 위한 많은 포크와 해결 방법이 있음) Gallium Nine은 이제 더 나은 GPU 지원을 제공하며(현재 Intel 최신 드라이버와 함께 작동) DXVK 및 wined3d보다 1.5~2배 향상된 성능을 제공합니다.

그리고 이미 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

이것은 오래된 게임에만 적용되기 때문에 이것이 우선 순위가 아닐 수도 있다는 것을 알고 있지만 갈륨 나인의 이점을 얻을 수 있는 엄청난 게임 목록이 있습니다.

이 주제에 대한 업데이트가 있습니까? @popsUlfr은 불행히도 1년 전에 기본 D3D9 지원과 함께 새로운 Proton 빌드를 제공하기 위해 중단되었습니다.

이 주제에 대한 업데이트가 있습니까? @popsUlfr은 불행히도 1년 전에 기본 D3D9 지원과 함께 새로운 Proton 빌드를 제공하기 위해 중단되었습니다.

나는 일반 양성자 + 갈륨 9 독립형을 사용하고 있습니다. Winetricks로 설치하고 DXVK를 비활성화했습니다.

나는 일반 양성자 + 갈륨 9 독립형을 사용하고 있습니다. 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을 proton 없이(그리고 steam의 게임 없이) 사용할 수 있습니다.
추신: 갈륨나인 설정:
WINE="./Proton-5.9-GE-8-ST/dist/bin/wine" WINEPREFIX=~/.steam/steam/steamapps/compatdata/372000/pfx/ ./Proton-5.9-GE-8-ST/ protonfixes/와인트릭 --포스 갈륨나인

이 페이지가 도움이 되었나요?
0 / 5 - 0 등급