Valve пусна нов клон на проекта Proton 4.11, който се основава на разработките на проекта Wine и има за цел да гарантира стартирането в Linux на приложения за игри, създадени за Windows и представени в каталога Steam. Разработките на проекта се разпространяват под лиценза BSD. Щом са готови, промените, разработени в Proton, се пренасят върху оригиналното вино и свързани проекти, като DXVK и vkd3d.
Proton ви позволява да стартирате игри, които са достъпни само за Windows директно на клиента Steam Linux . Пакетът включва DirectX 10/11 (базиран на DXVK) и реализация 12 (базиран на vkd3d), работещ чрез превода на DirectX повиквания към API на Vulkan, осигурява подобрена поддръжка за контролери за игри и възможност за използване на режим на цял екран.
Основни новости на Proton 4.11
С пускането на този нов клон, Proton се премести да се синхронизира с основния код на Wine 4.11, от които бяха прехвърлени повече от 3300 промени (предишният клон се основаваше на виното 4.2). 154 лепенки Proton 4.2 са преместени нагоре по течението и вече са включени в основната част на Wine.
Като основна новост разработчиците подчертава добавянето на експериментална поддръжка за примитиви за синхронизация въз основа на системното повикване futex (), което намалява натоварването на процесора в сравнение с esync.
В допълнение, новата реализация решава проблеми с необходимостта от използване на специални настройки за esync и възможното изчерпване на наличните файлови дескриптори.
Кръпки с държач на индикатора FUTEX_WAIT_MULTIPLE необходими за Proton вече са пренесени за включване в основното ядро на Linux и Glibc.
Подготвените промени все още не са включени в основния състав на ядрото, така че по това време е необходимо да се инсталира специално ядро с поддръжка за тези примитиви.
Също така DXVK слоят (внедряването на DXGI, Direct3D 10 и Direct3D 11 върху API на Vulkan) Той беше актуализиран до новата версия 1.3.
Докато за D9VK (експериментално внедряване на Direct3D 9 на Vulkan) до версия 0.13f. За да активирате поддръжката на D9VK в Proton, използвайте знамето PROTON_USE_D9VK.
Много модули Wine вече са създадени като Windows PE файлове, вместо Linux библиотеки. С напредването на работата в тази област използването на PE ще помогне на някои DRM и анти-измамни системи.
От другите промени, които се открояват в този нов клон:
- Осигурен е трансфер на текущата честота на опресняване на монитора към игрите
- Извършени корекции, свързани с обработката на курсора на мишката и управлението на прозорци
- Поправени са забавяния при въвеждане и проблеми с поддръжката на вибрации за джойстици, проявяващи се в някои игри, особено в игрите на Unity engine
- Добавена е поддръжка за най-новата версия на OpenVR SDK
- FAudio компоненти с внедряване на звуковата библиотека DirectX (API XAudio2, X3DAudio, XAPO и XACT3), актуализирани до версия 19.07
- Отстранени проблеми с мрежовата подсистема в игрите в GameMaker
Преди да приемете клапи за клапани в основното ядро на Linux, да се използва futex () вместо esync, трябва да се инсталира специално ядро, което поддържа пул за синхронизиране на нишки внедрен в набора за корекция на fsync.
В Ubuntu 18.04 и 19.04 може да се използва PPA хранилище с експериментални ядра linux-mfutex-valve
Което може да се добави със следните команди:
sudo add-apt-repository ppa:valve-experimental/kernel-bionic -y sudo apt-get install linux-mfutex-valve
Как да активирам Proton в Steam?
За тази Те трябва да отворят Steam клиента и да кликнат върху Steam в горния ляв ъгъл и след това Настройки.
В секцията „Акаунт“ ще намерите опцията за регистрация за бета версията. Правейки това и приемайки, ще затворите Steam клиента и ще изтеглите бета версията (нова инсталация).
В края и след достъп до акаунта си те се връщат към същия маршрут, за да проверят дали вече използват Proton.