forked from CastroFidel/PortWINE
Merge branch 'Boria138-gpu-select'
This commit is contained in:
commit
fb0ecbc611
@ -308,10 +308,8 @@ check_user_conf () {
|
||||
echo "# User overides db and var settings..." >> "${USER_CONF}"
|
||||
echo "# export DXVK_HUD=full" >> "${USER_CONF}"
|
||||
echo "# export GALLIUM_HUD=fps" >> "${USER_CONF}"
|
||||
echo "export optirun_on= #nvidia-prime-run or prime-run" >> "${USER_CONF}"
|
||||
else
|
||||
grep "optirun_on" "${USER_CONF}" >/dev/null
|
||||
[[ "$?" != 0 ]] && echo "export optirun_on=" >> "${USER_CONF}"
|
||||
elif grep "optirun_on" "${USER_CONF}" ; then
|
||||
sed -i '/optirun_on/d' "${USER_CONF}"
|
||||
fi
|
||||
}
|
||||
|
||||
|
@ -140,7 +140,6 @@ if [[ "${update_loc}" == "RUS" ]] ; then
|
||||
export PW_USE_WINE_DXGI_INFO='Принудительное использование встроенной библиотеки DXGI (в редких случаях решает проблемы с запуском игр под DX12)'
|
||||
export PW_MANGOHUD_USER_CONF_INFO='Принудительное использование системных настроек MANGOHUD (GOverlay и т.п.)'
|
||||
export PW_USE_D3D_EXTRAS_INFO='Включить принудительное использование сторонних библиотек DirectX'
|
||||
export PW_PRIME_RENDER_OFFLOAD_INFO='Включить дискретную видеокарту NVIDIA для ноутбуков с гибридной графикой (при поддержке установленого драйвера в ОС)'
|
||||
export PW_USE_WINDOWS_7_INFO='Изменить версию WINDOWS 10 на WINDOWS 7 в префиксе'
|
||||
export PW_USE_SHADER_CACHE_INFO='Использовать кеширование шейдеров средствами WINE (отключать только при наличии микрофризов в игре)'
|
||||
export PW_WINE_FULLSCREEN_FSR_INFO='Работает во время использования любой версии ProtonGE в полноэкранном режиме при разрешении ниже стандартного для экрана'
|
||||
@ -268,6 +267,9 @@ if [[ "${update_loc}" == "RUS" ]] ; then
|
||||
export loc_gui_amd_vulkan_select="Изменить используемый драйвер vulkan для AMD"
|
||||
export loc_gui_amd_vulkan_select_help="Выбор какая реализация vulkan будет использоваться для запуска игры"
|
||||
|
||||
export loc_gui_gpu_select="Выбрать видеокарту для запуска игры"
|
||||
export loc_gui_gpu_select_help="Выбор какая видеокарта будет использоваться для запуска игры"
|
||||
|
||||
export loc_gui_check_new_wine="Проверяем новые версии WINE на GitHub"
|
||||
export loc_gui_check_new_wine_error="Не удается установить соединение с GitHub\nдля проверки новых версии WINE."
|
||||
export loc_gui_set_new_wine="Выберите версию WINE для загрузки:"
|
||||
@ -420,7 +422,6 @@ elif [[ "${update_loc}" == "ENG" ]] ; then
|
||||
export PW_USE_WINE_DXGI_INFO='Forced use of built-in DXGI library (in rare cases it solves problems with DX12 games)'
|
||||
export PW_MANGOHUD_USER_CONF_INFO='Forced use of MANGOHUD system settings (GOverlay, etc.)'
|
||||
export PW_USE_D3D_EXTRAS_INFO='Enable forced use of third-party DirectX libraries'
|
||||
export PW_PRIME_RENDER_OFFLOAD_INFO='Enable NVIDIA discrete graphics card for notebooks with hybrid graphics (if supported by the installed driver in the OS)'
|
||||
export PW_USE_WINDOWS_7_INFO='Change the version of WINDOWS 10 to WINDOWS 7 in the prefix'
|
||||
export PW_USE_SHADER_CACHE_INFO='Use WINE shader caching (disable only if there are microfreezes in the game)'
|
||||
export PW_WINE_FULLSCREEN_FSR_INFO='Works while using any version of ProtonGE in full screen mode at a resolution below the standard screen'
|
||||
@ -548,6 +549,9 @@ A brief instruction:
|
||||
export loc_gui_amd_vulkan_select="Select needed AMD vulkan implementation"
|
||||
export loc_gui_amd_vulkan_select_help="Choosing which implementation of vulkan will be used to run the game"
|
||||
|
||||
export loc_gui_gpu_select="Choose a graphics card to run the game"
|
||||
export loc_gui_gpu_select_help="Selecting which video card will be used to run the game"
|
||||
|
||||
export loc_gui_check_new_wine="Check new version WINE from GitHub"
|
||||
export loc_gui_check_new_wine_error="Error: check wine from github."
|
||||
export loc_gui_set_new_wine="Select WINE for download:"
|
||||
|
@ -1,6 +1,6 @@
|
||||
#!/usr/bin/env bash
|
||||
# Author: Castro-Fidel (linux-gaming.ru)
|
||||
# Development assistants: Cefeiko; Dezert1r; Taz_mania; Anton_Famillianov; gavr; RidBowt; chal55rus; UserDiscord
|
||||
# Development assistants: Cefeiko; Dezert1r; Taz_mania; Anton_Famillianov; gavr; RidBowt; chal55rus; UserDiscord; Boria138
|
||||
########################################################################
|
||||
echo '
|
||||
█░░ █ █▄░█ █░█ ▀▄▀ ▄▄ █▀▀ ▄▀█ █▀▄▀█ █ █▄░█ █▀▀ ░ █▀█ █░█
|
||||
@ -162,18 +162,6 @@ start_portwine () {
|
||||
export PW_VULKAN_USE=5
|
||||
fi
|
||||
|
||||
if [[ "${PW_PRIME_RENDER_OFFLOAD}" == 1 ]] ; then
|
||||
if ${PW_WINELIB}/portable/bin/inxi -Gc0 | grep "renderer" | grep -i "nvidia" ; then
|
||||
print_debug "Nvidia used by default. Force disabled PRIME_RENDER_OFFLOAD"
|
||||
export __NV_PRIME_RENDER_OFFLOAD=0
|
||||
unset __GLX_VENDOR_LIBRARY_NAME __VK_LAYER_NV_optimus
|
||||
else
|
||||
export __NV_PRIME_RENDER_OFFLOAD=1
|
||||
export __GLX_VENDOR_LIBRARY_NAME=nvidia
|
||||
export __VK_LAYER_NV_optimus=NVIDIA_only
|
||||
fi
|
||||
fi
|
||||
|
||||
if [[ "${PW_HEAP_DELAY_FREE}" == 1 ]]
|
||||
then export WINE_HEAP_DELAY_FREE="1"
|
||||
else export WINE_HEAP_DELAY_FREE="0"
|
||||
@ -636,7 +624,7 @@ pw_run () {
|
||||
echo "Log WINE:" >> "${PW_LOG_TO_FILE}"
|
||||
echo ""
|
||||
print_debug "Log from RUNTIME and WINE:"
|
||||
env ${optirun_on} ${PW_GAMEMODERUN_SLR} \
|
||||
${PW_GAMEMODERUN_SLR} \
|
||||
NO_AT_BRIDGE=0 ${pw_runtime} \
|
||||
env ${PW_MANGOHUD_SLR} \
|
||||
PATH="${PATH}" \
|
||||
@ -652,7 +640,7 @@ pw_run () {
|
||||
fi
|
||||
echo ""
|
||||
print_debug "Log from RUNTIME and WINE:"
|
||||
env ${optirun_on} ${PW_GAMEMODERUN_SLR} \
|
||||
${PW_GAMEMODERUN_SLR} \
|
||||
NO_AT_BRIDGE=0 ${pw_runtime} \
|
||||
env ${PW_MANGOHUD_SLR} \
|
||||
PATH="${PATH}" \
|
||||
|
@ -409,7 +409,7 @@ pw_start_cont_xterm () {
|
||||
unset PW_SANDBOX_HOME_PATH
|
||||
# export PW_ADD_TO_ARGS_IN_RUNTIME="--xterm"
|
||||
pw_init_runtime
|
||||
${optirun_on} ${PW_GAMEMODERUN_SLR} ${pw_runtime} \
|
||||
${PW_GAMEMODERUN_SLR} ${pw_runtime} \
|
||||
env ${PW_MANGOHUD_SLR} \
|
||||
PATH="${PATH}" \
|
||||
LD_LIBRARY_PATH="${PW_LD_LIBRARY_PATH}" \
|
||||
@ -466,7 +466,7 @@ pw_edit_db () {
|
||||
pw_gui_for_edit_db \
|
||||
PW_MANGOHUD PW_MANGOHUD_x32 PW_MANGOHUD_USER_CONF ENABLE_VKBASALT PW_NO_ESYNC PW_NO_FSYNC PW_USE_RAY_TRACING \
|
||||
PW_USE_NVAPI_AND_DLSS PW_USE_FAKE_DLSS PW_WINE_FULLSCREEN_FSR PW_HIDE_NVIDIA_GPU PW_VIRTUAL_DESKTOP PW_USE_TERMINAL \
|
||||
PW_GUI_DISABLED_CS PW_USE_GAMEMODE PW_DX12_DISABLE PW_PRIME_RENDER_OFFLOAD PW_USE_D3D_EXTRAS PW_FIX_VIDEO_IN_GAME \
|
||||
PW_GUI_DISABLED_CS PW_USE_GAMEMODE PW_DX12_DISABLE PW_USE_D3D_EXTRAS PW_FIX_VIDEO_IN_GAME \
|
||||
PW_REDUCE_PULSE_LATENCY PW_USE_US_LAYOUT PW_USE_GSTREAMER PW_FORCE_LARGE_ADDRESS_AWARE PW_USE_SHADER_CACHE \
|
||||
PW_USE_WINE_DXGI PW_USE_EAC_AND_BE PW_USE_SYSTEM_VK_LAYERS PW_USE_OBS_VKCAPTURE PW_USE_GALLIUM_ZINK
|
||||
if [ "$?" == 0 ] ; then
|
||||
|
@ -55,7 +55,6 @@ export DEFPFX_VER="v1"
|
||||
export PROGPFX_VER="v1"
|
||||
export PW_MUST_WINEDLLOVERRIDES="steam_api,steam_api64,steamclient,steamclient64=n;dotnetfx35.exe,dotnetfx35setup.exe=b,winemenubuilder.exe="
|
||||
#################################################################
|
||||
export optirun_on=""
|
||||
export DXVK_CONFIG_FILE="${PORT_WINE_PATH}/data/dxvk.conf"
|
||||
#################################################################
|
||||
pw_install_dll_in_prefix ()
|
||||
|
@ -165,6 +165,14 @@ pw_gui_for_edit_db () {
|
||||
AMD_VULKAN_VAR="disabled"
|
||||
fi
|
||||
|
||||
if [[ ! -z "${PW_GPU_USE}" ]] && [[ "${PW_GPU_USE}" != "disabled" ]] ; then
|
||||
GPU_VAR="${PW_GPU_USE}"
|
||||
else
|
||||
GPU_VAR="disabled"
|
||||
fi
|
||||
|
||||
GET_GPU_NAMES=$(vulkaninfo 2>/dev/null | awk -F '=' '/deviceName/{print $2}' | paste -sd '!' | sed 's/^ //')
|
||||
|
||||
GET_REFRASH_RATE="30!45!60!75!120!144!165!240"
|
||||
|
||||
logical_cores=$(grep -c "^processor" /proc/cpuinfo)
|
||||
@ -207,6 +215,7 @@ pw_gui_for_edit_db () {
|
||||
--field=":LBL" "" \
|
||||
--field="${loc_gui_cpu_limit}!${loc_gui_cpu_limit_help} :CB" "${CPU_LIMIT_VAR}!disabled!${GET_LOGICAL_CORE}" \
|
||||
--field="${loc_gui_amd_vulkan_select}!${loc_gui_amd_vulkan_select_help} :CB" "${AMD_VULKAN_VAR}!disabled!amdvlk!amdgpupro!radv!radv_gpl!radv_aco" \
|
||||
--field="${loc_gui_gpu_select}!${loc_gui_gpu_select_help} :CB" "${GPU_VAR}!disabled!${GET_GPU_NAMES}" \
|
||||
--field="${loc_gui_mango_fps}!${loc_gui_mango_fps_help} :CB" "${FPS_LIMIT_VAR}!disabled!${GET_REFRASH_RATE}" 2>/dev/null 1> "${PORT_WINE_TMP_PATH}/tmp_output_yad_fps_limit" 2>/dev/null &
|
||||
"${pw_yad_v12_3}" --paned --key="$KEY_EDIT_DB_GUI" --title "EDIT_DB" --text-align=center --height="700" \
|
||||
--text "${loc_gui_edit_db} <b>${PORTWINE_DB}</b>\n ${loc_gui_edit_db_help}" --separator=" " --borders=3 \
|
||||
@ -239,7 +248,8 @@ pw_gui_for_edit_db () {
|
||||
LAUNCH_PARAMETERS=`cat "${PORT_WINE_TMP_PATH}/tmp_output_yad_fps_limit" | awk -F"%" '{print $5}'`
|
||||
CPU_LIMIT="`cat "${PORT_WINE_TMP_PATH}/tmp_output_yad_fps_limit" | awk -F"%" '{print $7}'`"
|
||||
PW_AMD_VULKAN_USE="`cat "${PORT_WINE_TMP_PATH}/tmp_output_yad_fps_limit" | awk -F"%" '{print $8}'`"
|
||||
FPS_LIMIT="`cat "${PORT_WINE_TMP_PATH}/tmp_output_yad_fps_limit" | awk -F"%" '{print $9}'`"
|
||||
PW_GPU_USE="`cat "${PORT_WINE_TMP_PATH}/tmp_output_yad_fps_limit" | awk -F"%" '{print $9}'`"
|
||||
FPS_LIMIT="`cat "${PORT_WINE_TMP_PATH}/tmp_output_yad_fps_limit" | awk -F"%" '{print $10}'`"
|
||||
|
||||
if [[ "${FPS_LIMIT}" != "disabled" ]] && [[ "${FPS_LIMIT_VAR}" != "disabled" ]] ; then
|
||||
export MANGOHUD_CONFIG="$(echo ${MANGOHUD_CONFIG} | sed "s/fps_limit=${FPS_LIMIT_VAR}/fps_limit=${FPS_LIMIT}/")"
|
||||
@ -284,8 +294,12 @@ pw_gui_for_edit_db () {
|
||||
var_radv_perftest_config_update gpl
|
||||
export VK_ICD_FILENAMES="/usr/share/vulkan/icd.d/radeon_icd.i686.json:/usr/share/vulkan/icd.d/radeon_icd.x86_64.json"
|
||||
fi
|
||||
if [[ "${PW_GPU_USE}" != "disabled" ]]; then
|
||||
export DXVK_FILTER_DEVICE_NAME=$PW_GPU_USE
|
||||
export VKD3D_FILTER_DEVICE_NAME=$PW_GPU_USE
|
||||
fi
|
||||
echo "pw_gui_for_edit_db PORTWINE_DB_FILE=$PORTWINE_DB_FILE"
|
||||
edit_db_from_gui $@ MANGOHUD_CONFIG LAUNCH_PARAMETERS PW_WINDOWS_VER PW_DLL_INSTALL WINEDLLOVERRIDES PW_WINE_CPU_TOPOLOGY PW_AMD_VULKAN_USE
|
||||
edit_db_from_gui $@ MANGOHUD_CONFIG LAUNCH_PARAMETERS PW_WINDOWS_VER PW_DLL_INSTALL WINEDLLOVERRIDES PW_WINE_CPU_TOPOLOGY PW_AMD_VULKAN_USE PW_GPU_USE
|
||||
return 0
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user