Валве Цомпани нова грана пројекта , заснован на развоју пројекта Вине и усмерен на обезбеђивање покретања апликација за игре креираних за Виндовс и представљених у Стеам каталогу на Линук-у. Развој пројекта под БСД лиценцом. Како су спремни, промене развијене у Протону се преносе на оригинални Вине и сродне пројекте, као што су ДКСВК и вкд3д.
Протон вам омогућава да директно покрећете апликације за игре само за Виндовс у Стеам Линук клијенту. Пакет укључује имплементацију ДирецтКс 10/11 (засновану на ) и 12 (на основу ), радећи преко ДирецтКс позива за Вулкан АПИ, пружа побољшану подршку за контролере игара и могућност коришћења режима целог екрана без обзира на резолуције екрана које су подржане у играма. У поређењу са оригиналним Вине-ом, перформансе игара са више нити су значајно повећане захваљујући употреби закрпа "„(Синхронизација Евентфд) или „футек/фсинц“.
Главни :
- Извршена је синхронизација са кодном базом Вине 4.11 из које је пренето више од 3300 измена (претходна грана је била заснована на вине 4.2). 154 закрпе из Протона 4.2 су премештене узводно и сада су укључене у главни пакет Вине;
- Додата експериментална подршка за примитиве синхронизације засноване на футек() системском позиву, што смањује оптерећење ЦПУ-а у поређењу са есинц-ом. Поред тога, нова имплементација решава проблеме са потребом коришћења за есинхронизацију и могуће исцрпљивање доступних дескриптора датотека.
Суштина посла који се обавља је проширење функционалности стандардног футек() системског позива у језгру Линука са могућностима неопходним за оптималну синхронизацију пула нити. Закрпе са подршком за ФУТЕКС_ВАИТ_МУЛТИПЛЕ заставицу неопходне за Протон су већ за укључивање у главно језгро Линука и . Припремљене измене још нису укључене у главно језгро, тако да је тренутно неопходно специјално језгро са подршком за ове примитиве;
- Међуслој (имплементација ДКСГИ, Дирецт3Д 10 и Дирецт3Д 11 на врху Вулкан АПИ-ја) ажурирана на верзију И (експериментална имплементација Дирецт3Д 9 на врху Вулкана) до верзије 0.13ф. Да бисте омогућили подршку за Д9ВК у Протону, користите ознаку ПРОТОН_УСЕ_Д9ВК;
- Тренутна брзина освежавања монитора се преноси на игре;
- Направљене су поправке за управљање фокусом миша и управљањем прозорима;
- Исправљено кашњење у уносу и проблеми са подршком за вибрације за џојстике који се јављају у неким играма, посебно у играма заснованим на Унити енгине-у;
- Додата подршка за најновију верзију ОпенВР СДК-а;
- ФАудио компоненте са имплементацијом ДирецтКс звучних библиотека (АПИ КСАудио2, Кс3ДАудио, КСАПО и КСАЦТ3) су ажуриране до издања 19.07;
- Проблеми са мрежним подсистемом у игрицама на ГамеМакер-у су решени;
- Многи Вине модули су сада направљени као Виндовс ПЕ датотеке уместо Линук библиотека. Како посао напредује у овој области, употреба ПЕ ће помоћи неким ДРМ и системима против варања. Ако користите прилагођене Протон верзије, највероватније ћете морати да поново креирате Вагрант виртуелну машину да бисте направили ПЕ датотеке.
Пре него што се закрпе Валвеа усвоје у главно језгро Линука, коришћење футек() уместо есинц захтева инсталирање посебног језгра са подршком за скуп за синхронизацију нити имплементиран у скуп закрпа . За Арцх Линук у АУР већ готов пакет кернела компајлиран са фсинц закрпама. На Убунту 18.04 и 19.04, можете користити линук-мфутек-валве експериментално кернел ППА (судо адд-апт-репоситори ппа:валве-екпериментал/кернел-биониц; судо апт-гет инсталл линук-мфутек-валве);
Ако имате кернел са подршком за фсинц, када покренете Протон 4.11, конзола ће приказати поруку „фсинц: уп анд рун“. Можете присилно искључити фсинц помоћу ознаке ПРОТОН_НО_ФСИНЦ=1.
Извор: опеннет.ру
