diff --git a/data_from_portwine/changelog_eng b/data_from_portwine/changelog_eng index afedc6f9..ecfc8a8f 100644 --- a/data_from_portwine/changelog_eng +++ b/data_from_portwine/changelog_eng @@ -2,6 +2,13 @@ You can help us in the development of the project on the website: boosty.to/port ----------------------------------------- Changelog: +###Scripts version 2106### +* updated libs_v29 (steam runtime sniper 20220509, mangohud 0.6.7, vkBasalt 0.3.2.5) +* added "WINE_FULLSCREEN_FSR" variable to "EDIT_DB" to enable "AMD FidelityFX Super Resolution" +* improved image quality when using FSR (Works while using any version of ProtonGE in full screen mode at a resolution below the standard screen) +* vkBasalt performance improved +* performance improvements in games when using the VULKAN API (DXVK and VKD3D) + ###Scripts version 2105### * updated "PROTON_STEAM" to version 7.0-2 * updated "PROTON_GE" to version 7-16 diff --git a/data_from_portwine/changelog_rus b/data_from_portwine/changelog_rus index 472047f9..ae6235cf 100755 --- a/data_from_portwine/changelog_rus +++ b/data_from_portwine/changelog_rus @@ -2,6 +2,13 @@ ----------------------------------------- История изменений: +###Scripts version 2106### +* обновлен libs_v29 (steam runtime sniper 20220509, mangohud 0.6.7, vkBasalt 0.3.2.5) +* для включения "AMD FidelityFX Super Resolution" в "EDIT_DB" добавлен переменная "WINE_FULLSCREEN_FSR" +* улучшено качество изображения при использовании FSR (Работает во время использования любой версии ProtonGE в полноэкранном режиме при разрешении ниже стандартного для экрана) +* улучшена производительность vkBasalt +* улучшение производительности в играх при использовании API VULKAN (DXVK и VKD3D) + ###Scripts version 2105### * обновлен "PROTON_STEAM" до версии 7.0-2 * обновлен "PROTON_GE" до версии 7-16 diff --git a/data_from_portwine/scripts/functions_helper b/data_from_portwine/scripts/functions_helper index c346f537..3180e27b 100755 --- a/data_from_portwine/scripts/functions_helper +++ b/data_from_portwine/scripts/functions_helper @@ -367,18 +367,12 @@ pw_init_runtime () { --home="${PW_SANDBOX_HOME_PATH}" \ --no-gc-legacy-runtimes \ --no-gc-runtimes \ - --generate-locales \ - --remove-game-overlay \ - --systemd-scope \ ${PW_ADD_TO_ARGS_IN_RUNTIME} --" else export pw_runtime="${PW_WINELIB}/pressure-vessel/bin/pressure-vessel-unruntime \ --share-home \ --no-gc-legacy-runtimes \ --no-gc-runtimes \ - --generate-locales \ - --remove-game-overlay \ - --systemd-scope \ ${PW_ADD_TO_ARGS_IN_RUNTIME} --" fi @@ -431,7 +425,7 @@ pw_mangohud_check () { pw_vkbasalt_check () { if [[ "${ENABLE_VKBASALT}" == 1 ]] && [[ "${PW_VULKAN_USE}" != "0" ]] && [[ "${PW_VULKAN_USE}" != "3" ]] ; then if [[ -z "${PW_VKBASALT_EFFECTS}" ]] ; then - export PW_VKBASALT_EFFECTS="cas:FilmGrain2" + export PW_VKBASALT_EFFECTS="Curves:cas" fi sed -ri "s/effects = .*/effects = ${PW_VKBASALT_EFFECTS}/g" "${PORT_WINE_PATH}/data/vkBasalt.conf" if [[ -z "${PW_VKBASALT_FFX_CAS}" ]] ; then @@ -439,9 +433,7 @@ pw_vkbasalt_check () { fi sed -ri "s/casSharpness .*/casSharpness = ${PW_VKBASALT_FFX_CAS}/g" "${PORT_WINE_PATH}/data/vkBasalt.conf" export VKBASALT_CONFIG_FILE="${PORT_WINE_PATH}/data/vkBasalt.conf" - sed -i s/'> = 0.05;'/'> = 0.035;'/ "${PW_WINELIB}/pressure-vessel/reshade/shaders/FilmGrain2.fx" - sed -i s/'> = 0.65;'/'> = 0.4;'/ "${PW_WINELIB}/pressure-vessel/reshade/shaders/Curves.fx" - sed -i s/'> = 0.8;'/'> = 0.9;'/ "${PW_WINELIB}/pressure-vessel/reshade/shaders/Bloom.fx" + # sed -i s/'> = 0.05;'/'> = 0.035;'/ "${PW_WINELIB}/pressure-vessel/reshade/shaders/FilmGrain2.fx" var_vk_istance_layers_config_update "VK_LAYER_VKBASALT_post_processing32:VK_LAYER_VKBASALT_post_processing64" print_info "vkBasalt is enabled" else diff --git a/data_from_portwine/scripts/lang b/data_from_portwine/scripts/lang index 10148d22..f12d8f48 100755 --- a/data_from_portwine/scripts/lang +++ b/data_from_portwine/scripts/lang @@ -108,6 +108,7 @@ then export PW_USE_WINDOWS_7_INFO='Изменить версию WINDOWS 10 на WINDOWS 7 в префиксе' export PW_USE_AMDVLK_DRIVER_INFO='Использовать драйвер AMDVLK вместо RADV на видеокартах от AMD' export PW_USE_SHADER_CACHE_INFO='Использовать кеширование шейдеров средствами WINE (отключать только при наличии микрофризов в игре)' + export PW_WINE_FULLSCREEN_FSR_INFO='Работает во время использования любой версии ProtonGE в полноэкранном режиме при разрешении ниже стандартного для экрана' export PW_3DFX_INFO='Имитация старого графического ускорителя 3dfx (добавляет горизонтальные полосы)' export PW_AdaptiveSharpen_INFO='Увеличение резкости, можно использовать совместо с CAS' diff --git a/data_from_portwine/scripts/runlib b/data_from_portwine/scripts/runlib index 39b1249b..096b24ce 100755 --- a/data_from_portwine/scripts/runlib +++ b/data_from_portwine/scripts/runlib @@ -424,6 +424,25 @@ start_portwine () { export RADV_DEBUG=nocache fi + if [[ "${PW_WINE_FULLSCREEN_FSR}" == 1 ]] || [[ "${WINE_FULLSCREEN_FSR}" == 1 ]] ; then + export WINE_FULLSCREEN_FSR=1 + export WINE_FULLSCREEN_FSR_STRENGTH=0 + export WINE_FULLSCREEN_INTEGER_SCALING=0 + # export WINE_FULLSCREEN_FAKE_CURRENT_RES=1920x1080 + else + export WINE_FULLSCREEN_FSR=0 + unset WINE_FULLSCREEN_FAKE_CURRENT_RES WINE_FULLSCREEN_FSR_STRENGTH WINE_FULLSCREEN_INTEGER_SCALING + fi + + for try_cp_dll_from_wine in "ntdll.dll" "vulkan-1.dll" ; do + if ! try_copy_file "${WINEDIR}"/lib/wine/fakedlls/${try_cp_dll_from_wine} "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/windows/syswow64/${try_cp_dll_from_wine}" + then try_copy_file "${WINEDIR}"/lib/wine/i386-windows/${try_cp_dll_from_wine} "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/windows/syswow64/${try_cp_dll_from_wine}" + fi + if ! try_copy_file "${WINEDIR}"/lib64/wine/fakedlls/${try_cp_dll_from_wine} "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/windows/system32/${try_cp_dll_from_wine}" + then try_copy_file "${WINEDIR}"/lib64/wine/x86_64-windows/${try_cp_dll_from_wine} "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/windows/system32/${try_cp_dll_from_wine}" + fi + done + #run_winetricks_from_db if [[ ! -z "${PW_MUST_HAVE_DLL}" ]] then export PW_DLL_INSTALL="`echo "${PW_MUST_HAVE_DLL} ${PW_DLL_INSTALL}" | awk '{ for(i=1;i<=NF;i++){a[$i]++} }END{ for(i in a){printf("%s ",i)} }' `" @@ -500,14 +519,24 @@ pw_run () { echo "WINEDLLOVERRIDES=${WINEDLLOVERRIDES}" >> "${PW_LOG_TO_FILE}" echo "------------------------------------" >> "${PW_LOG_TO_FILE}" echo "Log WINE:" >> "${PW_LOG_TO_FILE}" - ${optirun_on} ${PW_GAMEMODERUN_SLR} ${pw_runtime} env ${PW_MANGOHUD_SLR} LD_PRELOAD="${PW_LD_PRELOAD}" \ - PATH="${PATH}" VK_INSTANCE_LAYERS=${PW_VK_INSTANCE_LAYERS} LD_LIBRARY_PATH="${PW_LD_LIBRARY_PATH}" \ - VK_LAYER_PATH="${PW_VK_LAYER_PATH}" "${WINELOADER}" "$@" ${LAUNCH_PARAMETERS[@]} &>>"${PW_LOG_TO_FILE}" + ${optirun_on} ${PW_GAMEMODERUN_SLR} ${pw_runtime} \ + env ${PW_MANGOHUD_SLR} \ + PATH="${PATH}" \ + LD_LIBRARY_PATH="${PW_LD_LIBRARY_PATH}" \ + LD_PRELOAD="${PW_LD_PRELOAD}" \ + VK_LAYER_PATH="${PW_VK_LAYER_PATH}" \ + VK_INSTANCE_LAYERS=${PW_VK_INSTANCE_LAYERS} \ + "${WINELOADER}" "$@" ${LAUNCH_PARAMETERS[@]} &>>"${PW_LOG_TO_FILE}" else - [ "${PW_USE_TERMINAL}" != "1" ] && export PW_TERM="" - $PW_TERM ${optirun_on} ${PW_GAMEMODERUN_SLR} ${pw_runtime} env ${PW_MANGOHUD_SLR} LD_PRELOAD="${PW_LD_PRELOAD}"\ - PATH="${PATH}" VK_INSTANCE_LAYERS=${PW_VK_INSTANCE_LAYERS} LD_LIBRARY_PATH="${PW_LD_LIBRARY_PATH}" \ - VK_LAYER_PATH="${PW_VK_LAYER_PATH}" "${WINELOADER}" "$@" ${LAUNCH_PARAMETERS[@]} + [[ "${PW_USE_TERMINAL}" != "1" ]] && export PW_TERM="" + $PW_TERM ${optirun_on} ${PW_GAMEMODERUN_SLR} ${pw_runtime} \ + env ${PW_MANGOHUD_SLR} \ + PATH="${PATH}" \ + LD_LIBRARY_PATH="${PW_LD_LIBRARY_PATH}" \ + LD_PRELOAD="${PW_LD_PRELOAD}" \ + VK_LAYER_PATH="${PW_VK_LAYER_PATH}" \ + VK_INSTANCE_LAYERS=${PW_VK_INSTANCE_LAYERS} \ + "${WINELOADER}" "$@" ${LAUNCH_PARAMETERS[@]} &>>/dev/null fi } export -f pw_run diff --git a/data_from_portwine/scripts/start.sh b/data_from_portwine/scripts/start.sh index 88a0d297..a422e228 100755 --- a/data_from_portwine/scripts/start.sh +++ b/data_from_portwine/scripts/start.sh @@ -396,7 +396,7 @@ pw_create_prefix_backup () { pw_edit_db () { pw_gui_for_edit_db \ PW_MANGOHUD PW_MANGOHUD_USER_CONF ENABLE_VKBASALT PW_NO_ESYNC PW_NO_FSYNC PW_USE_DXR10 PW_USE_DXR11 \ - PW_VULKAN_NO_ASYNC PW_USE_NVAPI_AND_DLSS PW_OLD_GL_STRING PW_HIDE_NVIDIA_GPU PW_FORCE_USE_VSYNC PW_VIRTUAL_DESKTOP \ + PW_USE_NVAPI_AND_DLSS PW_WINE_FULLSCREEN_FSR PW_OLD_GL_STRING PW_HIDE_NVIDIA_GPU PW_FORCE_USE_VSYNC PW_VIRTUAL_DESKTOP \ PW_WINEDBG_DISABLE PW_USE_TERMINAL PW_WINE_ALLOW_XIM PW_HEAP_DELAY_FREE PW_GUI_DISABLED_CS PW_USE_GSTREAMER \ PW_USE_GAMEMODE PW_DX12_DISABLE PW_PRIME_RENDER_OFFLOAD PW_D3D_EXTRAS_DISABLE PW_FIX_VIDEO_IN_GAME PW_USE_AMDVLK_DRIVER \ PW_FORCE_LARGE_ADDRESS_AWARE PW_USE_SHADER_CACHE diff --git a/data_from_portwine/scripts/var b/data_from_portwine/scripts/var index 589cde94..fee1e616 100755 --- a/data_from_portwine/scripts/var +++ b/data_from_portwine/scripts/var @@ -1,6 +1,6 @@ #!/usr/bin/env bash #Author: Castro-Fidel (PortWINE-Linux.ru) -#SCRIPTS_NEXT_VERSION=2105 +#SCRIPTS_NEXT_VERSION=2106 ######################################################################## export PW_MANGOHUD=0 export MANGOHUD_CONFIG=cpu_stats,cpu_temp,cpu_mhz,cpu_color=2e97cb,cpu_text=CPU,gpu_stats,gpu_temp,gpu_core_clock,gpu_mem_clock,vulkan_driver,gpu_name,gpu_color=2e9762,gpu_text=GPU,vram,vram_color=ad64c1,ram,ram_color=c26693,io_color=a491d3,frame_timing=1,frametime_color=00ff00,time,arch,wine,wine_color=eb5b5b,engine_color=eb5b5b,background_alpha=0.2,font_size=24,background_color=020202,text_color=ffffff,toggle_hud=Shift_R+F12,resolution,vkbasalt @@ -21,8 +21,8 @@ export PW_USE_TERMINAL=0 export PW_WINEDBG_DISABLE=1 export PW_WINDOWS_VER="10" export WINEARCH="win64" -export PW_LIBS_VER="_v28" -export PORTWINE_URL="portwine-linux.ru/" +export PW_LIBS_VER="_v29" +export PORTWINE_URL="https://portwine-linux.ru/" export GDK_BACKEND="x11" export PW_USE_GSTREAMER="1" export PW_PREFIX_NAME="DEFAULT" @@ -39,8 +39,7 @@ export PW_PROTON_STEAM_VER="PROTON_STEAM_${PW_STEAM_VER}" ###WINE_PROTON_GE### export PW_GE_VER="7-16" export PW_PROTON_GE_VER="PROTON_GE_${PW_GE_VER}" -export WINE_FULLSCREEN_FSR="1" -export WINE_FULLSCREEN_FSR_STRENGTH="2" +export PW_WINE_FULLSCREEN_FSR=0 ###WINE_PROTON_PW_FOR_GALLIUM_NINE### export PW_PW_VER="7.5" export PW_PROTON_PW_VER="PROTON_PW_${PW_PW_VER}" diff --git a/data_from_portwine/scripts/zen_yad_gui b/data_from_portwine/scripts/zen_yad_gui index 3966f206..da65c7ae 100644 --- a/data_from_portwine/scripts/zen_yad_gui +++ b/data_from_portwine/scripts/zen_yad_gui @@ -333,7 +333,7 @@ export -f gui_proton_downloader gui_vkBasalt () { KEY_FX_GUI=$RANDOM FILE_VKBASALT_CONF="${PORT_WINE_PATH}/data/vkBasalt.conf" - LIST_FX=(`grep ".fx$" "${FILE_VKBASALT_CONF}" | awk '{print $1}'`) + LIST_FX=(`grep -E '.fx$|.fxh$' "${FILE_VKBASALT_CONF}" | awk '{print $1}'`) GET_FX_IN_FILE=(`echo ${PW_VKBASALT_EFFECTS} | sed s/"cas:"// | sed s/":"/" "/g`) unset ADD_GUI_FX GUI_FX_RESULT for add_list_fx in ${LIST_FX[@]} ; do @@ -378,11 +378,11 @@ gui_vkBasalt () { INT_COUNT_FX=0 for read_list_fx in ${YAD_BASALT_SET} ; do if [[ "$read_list_fx" == "TRUE" ]] ; then - export GUI_FX_RESULT+=":${LIST_FX[$INT_COUNT_FX]}" + export GUI_FX_RESULT+="${LIST_FX[$INT_COUNT_FX]}:" fi export INT_COUNT_FX=$(( ${INT_COUNT_FX} + 1 )) done - GUI_FX_RESULT="cas${GUI_FX_RESULT}" + GUI_FX_RESULT="${GUI_FX_RESULT}cas" export PW_VKBASALT_EFFECTS="${GUI_FX_RESULT}" if [[ "$YAD_CAS_SET" == "0" ]] ; then