Bidh Valve a’ leigeil a-mach Proton 4.11, sreath airson geamannan Windows a ruith air Linux

Companaidh Bhalbhaichean foillsichte meur pròiseact ùr Pròtan 4.11, stèidhichte air leasachaidhean a’ phròiseict Fìon agus ag amas air dèanamh cinnteach gun tèid tagraidhean gèam a chruthachadh airson Windows agus a thaisbeanadh ann an catalog Steam air Linux. Leasachaidhean pròiseict sgaoileadh fo chead BSD. Cho luath ‘s a bhios iad deiseil, thèid atharrachaidhean a chaidh a leasachadh ann am Proton a ghluasad gu na pròiseactan Fìon tùsail agus co-cheangailte riutha, leithid DXVK agus vkd3d.

Leigidh Proton leat tagraidhean gèam Windows a-mhàin a ruith anns a’ chleachdaiche Steam Linux. Tha am pasgan a’ toirt a-steach buileachadh DirectX 10/11 (stèidhichte air DXVC) agus 12 (stèidhichte air vkd 3d), ag obair tro ghairmean DirectX gu API Vulkan, a’ toirt taic nas fheàrr do luchd-riaghlaidh geama agus an comas modh làn-sgrìn a chleachdadh ge bith dè na rùintean sgrion a tha a’ faighinn taic bho gheamannan. An coimeas ris an Fhìon tùsail, tha coileanadh gheamannan ioma-snàithlean air a dhol suas gu mòr le bhith a’ cleachdadh badan "esync"(Eventfd Synchronization) no "futex/fsync".

prìomh atharrachaidhean ann am Proton 4.11:

  • Chaidh sioncronadh le còd Wine 4.11 a dhèanamh, às an deach barrachd air atharrachaidhean 3300 a ghluasad (bha am meur roimhe stèidhichte air fìon 4.2). Chaidh pìosan 154 bho Proton 4.2 a ghluasad suas an abhainn agus tha iad a-nis air an toirt a-steach don phrìomh phacaid Fìon;
  • Taic deuchainneach a bharrachd airson primitives sioncronaidh stèidhichte air gairm siostam futex (), a lughdaicheas an luchd CPU an taca ri esync. A bharrachd air an sin, tha am buileachadh ùr a’ fuasgladh dhuilgheadasan leis an fheum air cleachdadh suidheachaidhean sònraichte airson esync agus sàrachadh a dh’ fhaodadh a bhith air na tuairisgeulan faidhle a tha rim faighinn.

    Is e brìgh na h-obrach a thathar a’ dèanamh a bhith a’ leudachadh comas-gnìomh gairm siostam futex () àbhaisteach anns an kernel Linux leis na comasan a tha riatanach airson an t-sreath snàthainn a shioncronachadh. Tha pìosan ann le taic don bhratach FUTEX_WAIT_MULTIPLE a tha riatanach airson Proton mu thràth air a ghluasad airson a thoirt a-steach don phrìomh kernel Linux agus Glib. Chan eil na h-atharrachaidhean ullaichte fhathast air an toirt a-steach don phrìomh kernel, agus mar sin tha feum air an-dràsta stèidheachadh kernel sònraichte le taic dha na prìomhairean sin;

    Bidh Valve a’ leigeil a-mach Proton 4.11, sreath airson geamannan Windows a ruith air Linux

  • Interlayer DXVC (buileachadh DXGI, Direct3D 10 agus Direct3D 11 a bharrachd air an Vulkan API) air ùrachadh gu dreach 1.3agus D9 VK (buileachadh deuchainneach de Direct3D 9 air mullach Vulkan) suas gu dreach 0.13f. Gus taic D9VK ann am Proton a chomasachadh, cleachd am bratach PROTON_USE_D9VK;
  • Tha an ìre ùrachaidh monitor gnàthach air a ghluasad gu geamannan;
  • Chaidh fuasglaidhean a dhèanamh gus fòcas na luchaige agus riaghladh uinneig a làimhseachadh;
  • Lag cuir a-steach stèidhichte agus duilgheadasan le taic crathaidh airson clàran gàirdeachais a bhios a ’tachairt ann an cuid de gheamannan, gu sònraichte ann an geamannan stèidhichte air einnsean Unity;
  • Taic a bharrachd airson an tionndadh as ùire de OpenVR SDK;
  • Chaidh co-phàirtean FAudio le buileachadh leabharlannan fuaim DirectX (API XAudio2, X3DAudio, XAPO agus XACT3) ùrachadh gus 19.07 a leigeil ma sgaoil;
  • Chaidh duilgheadasan le fo-shiostam an lìonraidh ann an geamannan air GameMaker fhuasgladh;
  • Tha mòran mhodalan Wine a-nis air an togail mar fhaidhlichean Windows PE an àite leabharlannan Linux. Mar a thèid obair air adhart san raon seo, cuidichidh cleachdadh PE cuid de shiostaman DRM agus an-aghaidh meallta. Ma chleachdas tu togalaichean Proton àbhaisteach, is coltaiche gum feum thu an inneal brìgheil Vagrant ath-chruthachadh gus na faidhlichean PE a thogail.

Mus tèid pìosan Valve a ghabhail a-steach don phrìomh kernel Linux, le bhith a’ cleachdadh futex () an àite esync feumar kernel sònraichte a chuir a-steach le taic airson an amar sioncronaidh snàithlean air a chuir an gnìomh ann an seata de phìosan fsync. Airson Arch Linux ann an AUR mu thràth foillsichte pasgan kernel deiseil air a chur ri chèile le pìosan fsync. Air Ubuntu 18.04 agus 19.04, faodaidh tu an kernel deuchainneach linux-mfutex-valve PPA a chleachdadh (sudo add-apt-repository ppa:valve-experimental/kernel-bionic; sudo apt-get install linux-mfutex-valve);

Ma tha kernel agad le taic fsync, nuair a ruitheas tu Proton 4.11, seallaidh an consol an teachdaireachd “fsync: up and running”. 'S urrainn dhut sparradh air fsync a chur dheth leis a' bhratach PROTON_NO_FSYNC=1.

Source: fosgailtenet.ru

Cuir beachd ann