diff --git a/data_from_portwine/scripts/functions_helper b/data_from_portwine/scripts/functions_helper index 5deba5c5..86df8b0b 100755 --- a/data_from_portwine/scripts/functions_helper +++ b/data_from_portwine/scripts/functions_helper @@ -504,25 +504,36 @@ pw_mangohud_check () { } pw_reshade_check () { - if [[ "${ENABLE_RESHADE}" == 1 ]] && [[ "${PW_VULKAN_USE}" != "0" ]] ; then + if [[ "${ENABLE_RESHADE}" == 1 ]] && [[ "${PW_VULKAN_USE}" != "0" ]] && [[ "${PW_VULKAN_USE}" != "3" ]] ; then + if [[ $(file "$portwine_exe") =~ x86-64 ]]; then portwine_exe_arch=64 fi if [[ "$portwine_exe_arch" == "64" ]] ; then - $WINEDLLOVERRIDES="d3dcompiler_47=n,dxgi=n,b" - ln -is /run/pressure-vessel/pv-from-host/reshade/ReShade64.dll "$portwine_exe/dxgi.dll" + export needed_dll="dxgi.dll" + export WINEDLLOVERRIDES="d3dcompiler_47=n,dxgi=n,b" + ln -is /run/pressure-vessel/pv-from-host/reshade/ReShade64.dll "$portwine_exe/$needed_dll" else - $WINEDLLOVERRIDES="d3dcompiler_47=n,d3d9=n.b" - ln -is /run/pressure-vessel/pv-from-host/reshade/ReShade32.dll "$portwine_exe/d3d9.dll" + export needed_dll="d3d9.dll" + export WINEDLLOVERRIDES="d3dcompiler_47=n,d3d9=n.b" + ln -is /run/pressure-vessel/pv-from-host/reshade/ReShade32.dll "$portwine_exe/$needed_dll" fi - ln -is /run/pressure-vessel/pv-from-host/ReShade32.json "$portwine_exe/" - ln -is /run/pressure-vessel/pv-from-host/ "$portwine_exe/" - ln -is /run/pressure-vessel/pv-from-host/reshade/textures "$portwine_exe/" - ln -is /run/pressure-vessel/pv-from-host/reshade "$portwine_exe/" + LINKS="ReShade32.json ReShade64.json ReShade.ini textures reshade $needed_dll" + + for link in $LINKS; do + ln -is /run/pressure-vessel/pv-from-host/$link "$portwine_exe/" + done print_info "Reshade is enabled" else export DISABLE_RESHADE=1 + + for link in $LINKS; do + if [[ -L "$portwine_exe/$link" ]] + unlink "$portwine_exe/$link" + fi + done + unset WINEDLLOVERRIDES print_info "Reshade is disabled" fi return 0 diff --git a/data_from_portwine/scripts/lang b/data_from_portwine/scripts/lang index 9b47c66e..9e8c8dda 100755 --- a/data_from_portwine/scripts/lang +++ b/data_from_portwine/scripts/lang @@ -100,6 +100,7 @@ if [[ "${update_loc}" == "RUS" ]] ; then export loc_edit_db="Изменить файл настроек для" export loc_download_other_wine="Открыть меню для скачивания других версий WINE-PROTON" + export ENABLE_RESHADE_INFO='Включить Reshade по умолчанию для улучшение графики в играх работающих под Vulkan. (Горячая клавиша HOME отключает Reshade)' export PW_NO_ESYNC_INFO='Не использовать примитивы внутрипроцессной синхронизации на основе eventfd. (Рекомендуется не изменять значение)' export PW_NO_FSYNC_INFO='Не использовать примитивы внутрипроцессной синхронизации на основе фьютексов. (Автоматически отключается в системах без FUTEX_WAIT_MULTIPLE поддержки) (Рекомендуется не изменять значение)' export PW_USE_RAY_TRACING_INFO='Включить поддержку vkd3d - Ray Tracing' @@ -295,6 +296,7 @@ elif [[ "${update_loc}" == "ENG" ]] ; then export loc_edit_db="Edit database file for" export loc_download_other_wine="Open the menu to download other versions of WINE-PROTON " + export ENABLE_RESHADE_INFO='Enable Reshade by default to improve graphics in games running Vulkan. (The HOME hotkey disables Reshade).' export PW_NO_ESYNC_INFO='Do not use in-process synchronization primitives based on eventfd. (It is recommended not to change the value.)' export PW_NO_FSYNC_INFO='Do not use futex-based in-process synchronization primitives. (Automatically disabled on systems without FUTEX_WAIT_MULTIPLE support) (It is recommended not to change the value)' export PW_USE_RAY_TRACING_INFO='Enable vkd3d support - Ray Tracing'