Валве Цомпани нова грана пројекта , заснован на развоју пројекта Wine и са циљем да се обезбеди покретање у Linux апликације за игре креиране за Windows и представљен у Steam каталогу. Развој пројекта под БСД лиценцом. Како су спремни, промене развијене у Протону се преносе на оригинални Вине и сродне пројекте, као што су ДКСВК и вкд3д.
Протон вам омогућава директно лансирање Linux-Клијентске апликације за Steam игре се испоручују само за WindowsПакет укључује имплементацију DirectX 10/11 (засновану на ) и 12 (на основу ), радећи преко ДирецтКс позива за Вулкан АПИ, пружа побољшану подршку за контролере игара и могућност коришћења режима целог екрана без обзира на резолуције екрана које су подржане у играма. У поређењу са оригиналним Вине-ом, перформансе игара са више нити су значајно повећане захваљујући употреби закрпа "„(Синхронизација Евентфд) или „футек/фсинц“.
Главни :
- Извршена је синхронизација са кодном базом Вине 4.11 из које је пренето више од 3300 измена (претходна грана је била заснована на вине 4.2). 154 закрпе из Протона 4.2 су премештене узводно и сада су укључене у главни пакет Вине;
- Додата експериментална подршка за примитиве синхронизације засноване на футек() системском позиву, што смањује оптерећење ЦПУ-а у поређењу са есинц-ом. Поред тога, нова имплементација решава проблеме са потребом коришћења за есинхронизацију и могуће исцрпљивање доступних дескриптора датотека.
Суштина рада који се спроводи је проширење функционалности стандардног системског позива futex() у кернелу Linux могућности неопходне за оптималну синхронизацију базе нити. Закрпе са неопходном подршком за заставицу FUTEX_WAIT_MULTIPLE за Proton су већ доступне. за укључивање у главни састав језгра Linux и . Припремљене измене још нису укључене у главно језгро, тако да је тренутно неопходно специјално језгро са подршком за ове примитиве;
- Међуслој (имплементација ДКСГИ, Дирецт3Д 10 и Дирецт3Д 11 на врху Вулкан АПИ-ја) ажурирана на верзију И (експериментална имплементација Дирецт3Д 9 на врху Вулкана) до верзије 0.13ф. Да бисте омогућили подршку за Д9ВК у Протону, користите ознаку ПРОТОН_УСЕ_Д9ВК;
- Тренутна брзина освежавања монитора се преноси на игре;
- Направљене су поправке за управљање фокусом миша и управљањем прозорима;
- Исправљено кашњење у уносу и проблеми са подршком за вибрације за џојстике који се јављају у неким играма, посебно у играма заснованим на Унити енгине-у;
- Додата подршка за најновију верзију ОпенВР СДК-а;
- ФАудио компоненте са имплементацијом ДирецтКс звучних библиотека (АПИ КСАудио2, Кс3ДАудио, КСАПО и КСАЦТ3) су ажуриране до издања 19.07;
- Проблеми са мрежним подсистемом у игрицама на ГамеМакер-у су решени;
- Многи Wine модули су сада изграђени као Windows PE датотеке уместо тога Linux-библиотеке. Како рад у овој области напредује, коришћење PE ће помоћи неким DRM системима и софтверу против варања. Ако користите прилагођене Proton изградње, вероватно ћете морати да поново креирате Vagrant виртуелну машину да бисте изградили PE датотеке.
Пре него што буду примљени у главно језгро Linux Valve-ове закрпе за коришћење futex() уместо esync захтевају инсталирање посебног језгра са подршком за пул синхронизације нити, што је имплементирано у сету закрпа. За Арч Linux већ у AUR-у готов пакет језгра, компајлиран са fsync закрпама. Ubuntu Дана 18.04 и 19.04, можете користити PPA репозиторијум са експерименталним језгрима linux-mfutex-valve (sudo add-apt-repository ppa:valve-experimental/kernel-bionic; sudo apt-get install linux-mfutex-valve);
Ако имате кернел са подршком за фсинц, када покренете Протон 4.11, конзола ће приказати поруку „фсинц: уп анд рун“. Можете присилно искључити фсинц помоћу ознаке ПРОТОН_НО_ФСИНЦ=1.
Извор: опеннет.ру
