|
|
|
@ -1814,10 +1814,8 @@ pw_mangohud_check () {
|
|
|
|
|
export PW_MANGOHUD_SLR='MANGOHUD=1'
|
|
|
|
|
fi
|
|
|
|
|
# TODO: need to fix work for OpenGL without flatpak...
|
|
|
|
|
if [[ $PW_USE_GALLIUM_ZINK == "0" ]] ; then
|
|
|
|
|
MANGOHUD_LIB_NAME="libMangoHud_shim.so"
|
|
|
|
|
export PW_LD_PRELOAD="${PW_LD_PRELOAD:+$PW_LD_PRELOAD:}${MANGOHUD_LIB_NAME}"
|
|
|
|
|
fi
|
|
|
|
|
MANGOHUD_LIB_NAME="libMangoHud_shim.so"
|
|
|
|
|
export PW_LD_PRELOAD="${PW_LD_PRELOAD:+$PW_LD_PRELOAD:}${MANGOHUD_LIB_NAME}"
|
|
|
|
|
else
|
|
|
|
|
export PW_MANGOHUD_SLR=''
|
|
|
|
|
print_info "MangoHud is disabled"
|
|
|
|
@ -2737,6 +2735,28 @@ pw_get_tmp_files () {
|
|
|
|
|
print_warning "use portable vulkaninfo"
|
|
|
|
|
"$PW_PLUGINS_PATH"/portable/bin/x86_64-linux-gnu-vulkaninfo &> "${PW_TMPFS_PATH}/vulkaninfo.tmp"
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
# GALLIUM NINE
|
|
|
|
|
unset FIND_D3D_MODULE D3D_MODULE_PATH
|
|
|
|
|
if ! check_flatpak ; then
|
|
|
|
|
FIND_D3D_MODULE="$(find /usr/ -maxdepth 4 -type f -name "d3dadapter9.so.*" 2>/dev/null)"
|
|
|
|
|
if [[ -n "$FIND_D3D_MODULE" ]] ; then
|
|
|
|
|
FIND_D3D_MODULE="$(dirname "$FIND_D3D_MODULE")"
|
|
|
|
|
IFS=$'\n'
|
|
|
|
|
for D3D_MP in $FIND_D3D_MODULE ; do
|
|
|
|
|
if [[ -n "$D3D_MODULE_PATH" ]]
|
|
|
|
|
then export D3D_MODULE_PATH="$D3D_MODULE_PATH:/run/host${D3D_MP}"
|
|
|
|
|
else export D3D_MODULE_PATH="/run/host${D3D_MP}"
|
|
|
|
|
fi
|
|
|
|
|
done
|
|
|
|
|
IFS="$orig_IFS"
|
|
|
|
|
fi
|
|
|
|
|
else
|
|
|
|
|
if [[ -d "/app/lib/i386-linux-gnu/GL/default/lib/d3d" && -d "/usr/lib/x86_64-linux-gnu/GL/default/lib/d3d" ]] ; then
|
|
|
|
|
export D3D_MODULE_PATH="/app/lib/i386-linux-gnu/GL/default/lib/d3d:/usr/lib/x86_64-linux-gnu/GL/default/lib/d3d"
|
|
|
|
|
fi
|
|
|
|
|
fi
|
|
|
|
|
[[ -n $D3D_MODULE_PATH ]] && echo "$D3D_MODULE_PATH" > "${PW_TMPFS_PATH}/gallium_nine.tmp"
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
pw_skip_get_info () {
|
|
|
|
@ -3605,85 +3625,68 @@ start_portwine () {
|
|
|
|
|
|
|
|
|
|
# 3D API
|
|
|
|
|
unset CP_VKD3D_FILES CP_DXVK_FILES CP_DGV2_FILES CP_WINE_FILES PATH_TO_DXVK_FILES PATH_TO_VKD3D_FILES CP_GALLIUM_NINE_FILES
|
|
|
|
|
[[ "$PW_USE_GALLIUM_NINE" == "1" ]] && PW_VULKAN_USE="3"
|
|
|
|
|
case "${PW_VULKAN_USE}" in
|
|
|
|
|
0)
|
|
|
|
|
# WINED3D OPENGL
|
|
|
|
|
print_info "Use WINED3D OpenGL"
|
|
|
|
|
unset PW_VKBASALT PW_USE_GALLIUM_ZINK PW_USE_WINED3D_VULKAN PW_USE_SUPPLIED_DXVK_VKD3D
|
|
|
|
|
PATH_TO_VKD3D_FILES="${PW_VULKAN_DIR}/vkd3d-proton-${VKD3D_GIT_VER}"
|
|
|
|
|
CP_VKD3D_FILES="libvkd3d-1 libvkd3d-shader-1"
|
|
|
|
|
CP_WINE_FILES="d3d12 d3d12core d3d11 d3d10core d3d10_1 d3d10 d3d9 d3d8 dxgi"
|
|
|
|
|
;;
|
|
|
|
|
1)
|
|
|
|
|
# STABLE DXVK AND VKD3D
|
|
|
|
|
print_info "DXVK v.${DXVK_STABLE_VER} in use"
|
|
|
|
|
print_info "VKD3D-PROTON v.${VKD3D_STABLE_VER} in use"
|
|
|
|
|
PATH_TO_DXVK_FILES="${PW_VULKAN_DIR}/dxvk-${DXVK_STABLE_VER}"
|
|
|
|
|
PATH_TO_VKD3D_FILES="${PW_VULKAN_DIR}/vkd3d-proton-${VKD3D_STABLE_VER}"
|
|
|
|
|
CP_DXVK_FILES="d3d11 d3d10core d3d10_1 d3d10 d3d9 dxgi"
|
|
|
|
|
[[ "$PW_USE_VRCLIENT" = "1" ]] && add_to_var CP_DXVK_FILES "openvr_api_dxvk"
|
|
|
|
|
CP_VKD3D_FILES="d3d12 libvkd3d-shader-1"
|
|
|
|
|
CP_WINE_FILES="d3d12core d3d8"
|
|
|
|
|
;;
|
|
|
|
|
2)
|
|
|
|
|
# NEWEST DXVK AND VKD3D
|
|
|
|
|
print_info "DXVK v.${DXVK_GIT_VER} in use"
|
|
|
|
|
print_info "VKD3D-PROTON v.${VKD3D_GIT_VER} in use"
|
|
|
|
|
PATH_TO_DXVK_FILES="${PW_VULKAN_DIR}/dxvk-${DXVK_GIT_VER}"
|
|
|
|
|
PATH_TO_VKD3D_FILES="${PW_VULKAN_DIR}/vkd3d-proton-${VKD3D_GIT_VER}"
|
|
|
|
|
CP_DXVK_FILES="d3d11 d3d10core d3d9 d3d8 dxgi"
|
|
|
|
|
[[ "$PW_USE_VRCLIENT" = "1" ]] && add_to_var CP_DXVK_FILES "openvr_api_dxvk"
|
|
|
|
|
CP_VKD3D_FILES="d3d12 d3d12core libvkd3d-1 libvkd3d-shader-1"
|
|
|
|
|
CP_WINE_FILES="d3d10_1 d3d10"
|
|
|
|
|
;;
|
|
|
|
|
3)
|
|
|
|
|
# LEGACY DXVK
|
|
|
|
|
print_info "DXVK v.${DXVK_LEGACY_VER} in use"
|
|
|
|
|
PATH_TO_DXVK_FILES="${PW_VULKAN_DIR}/dxvk-${DXVK_LEGACY_VER}"
|
|
|
|
|
PATH_TO_VKD3D_FILES="${PW_VULKAN_DIR}/vkd3d-proton-${VKD3D_GIT_VER}"
|
|
|
|
|
CP_DXVK_FILES="d3d11 d3d10core d3d10_1 d3d10 d3d9 dxgi"
|
|
|
|
|
CP_VKD3D_FILES="libvkd3d-1 libvkd3d-shader-1"
|
|
|
|
|
CP_WINE_FILES="d3d12 d3d12core d3d8"
|
|
|
|
|
;;
|
|
|
|
|
esac
|
|
|
|
|
|
|
|
|
|
if [[ $PW_USE_DAMAVAND == "1" ]] && [[ $PW_VULKAN_USE != "0" ]] ; then
|
|
|
|
|
# WINED3D VULKAN (DAMAVAND)
|
|
|
|
|
print_info "Use DAMAVAND (DirectX to wined3d vulkan)"
|
|
|
|
|
if [[ $PW_USE_GALLIUM_NINE == "1" ]] \
|
|
|
|
|
|| [[ $PW_USE_GALLIUM_ZINK == "1" ]] \
|
|
|
|
|
|| [[ $PW_USE_WINED3D_VULKAN == "1" ]] ; then
|
|
|
|
|
unset PATH_TO_DXVK_FILES CP_DXVK_FILES PW_USE_SUPPLIED_DXVK_VKD3D
|
|
|
|
|
PATH_TO_VKD3D_FILES="${PW_VULKAN_DIR}/vkd3d-proton-${VKD3D_GIT_VER}"
|
|
|
|
|
CP_VKD3D_FILES="libvkd3d-1 libvkd3d-shader-1"
|
|
|
|
|
CP_WINE_FILES="d3d12 d3d12core d3d11 d3d10core d3d10_1 d3d10 d3d9 d3d8 dxgi"
|
|
|
|
|
export WINE_D3D_CONFIG="renderer=vulkan"
|
|
|
|
|
else
|
|
|
|
|
case "${PW_VULKAN_USE}" in
|
|
|
|
|
0)
|
|
|
|
|
# WINED3D OPENGL
|
|
|
|
|
print_info "Use WINED3D OpenGL"
|
|
|
|
|
PATH_TO_VKD3D_FILES="${PW_VULKAN_DIR}/vkd3d-proton-${VKD3D_GIT_VER}"
|
|
|
|
|
CP_VKD3D_FILES="libvkd3d-1 libvkd3d-shader-1"
|
|
|
|
|
CP_WINE_FILES="d3d12 d3d12core d3d11 d3d10core d3d10_1 d3d10 d3d9 d3d8 dxgi"
|
|
|
|
|
export __GL_YIELD="NOTHING"
|
|
|
|
|
export mesa_glthread="true"
|
|
|
|
|
export WINE_D3D_CONFIG="renderer=gl"
|
|
|
|
|
export PW_VKBASALT="0"
|
|
|
|
|
export PW_USE_GALLIUM_ZINK="0"
|
|
|
|
|
;;
|
|
|
|
|
1)
|
|
|
|
|
# STABLE DXVK AND VKD3D
|
|
|
|
|
print_info "DXVK v.${DXVK_STABLE_VER} in use"
|
|
|
|
|
print_info "VKD3D-PROTON v.${VKD3D_STABLE_VER} in use"
|
|
|
|
|
PATH_TO_DXVK_FILES="${PW_VULKAN_DIR}/dxvk-${DXVK_STABLE_VER}"
|
|
|
|
|
PATH_TO_VKD3D_FILES="${PW_VULKAN_DIR}/vkd3d-proton-${VKD3D_STABLE_VER}"
|
|
|
|
|
CP_DXVK_FILES="d3d11 d3d10core d3d10_1 d3d10 d3d9 dxgi"
|
|
|
|
|
[[ "$PW_USE_VRCLIENT" = "1" ]] && add_to_var CP_DXVK_FILES "openvr_api_dxvk"
|
|
|
|
|
CP_VKD3D_FILES="d3d12 libvkd3d-shader-1"
|
|
|
|
|
CP_WINE_FILES="d3d12core d3d8"
|
|
|
|
|
;;
|
|
|
|
|
2)
|
|
|
|
|
# NEWEST DXVK AND VKD3D
|
|
|
|
|
print_info "DXVK v.${DXVK_GIT_VER} in use"
|
|
|
|
|
print_info "VKD3D-PROTON v.${VKD3D_GIT_VER} in use"
|
|
|
|
|
PATH_TO_DXVK_FILES="${PW_VULKAN_DIR}/dxvk-${DXVK_GIT_VER}"
|
|
|
|
|
PATH_TO_VKD3D_FILES="${PW_VULKAN_DIR}/vkd3d-proton-${VKD3D_GIT_VER}"
|
|
|
|
|
CP_DXVK_FILES="d3d11 d3d10core d3d9 d3d8 dxgi"
|
|
|
|
|
[[ "$PW_USE_VRCLIENT" = "1" ]] && add_to_var CP_DXVK_FILES "openvr_api_dxvk"
|
|
|
|
|
CP_VKD3D_FILES="d3d12 d3d12core libvkd3d-1 libvkd3d-shader-1"
|
|
|
|
|
CP_WINE_FILES="d3d10_1 d3d10"
|
|
|
|
|
;;
|
|
|
|
|
3)
|
|
|
|
|
# GALLIUM NINE
|
|
|
|
|
print_info "Use GALLIUM-NINE (Native DX9 on MESA drivers)"
|
|
|
|
|
PATH_TO_VKD3D_FILES="${PW_VULKAN_DIR}/vkd3d-proton-${VKD3D_GIT_VER}"
|
|
|
|
|
CP_GALLIUM_NINE_FILES="d3d9"
|
|
|
|
|
CP_VKD3D_FILES="libvkd3d-1 libvkd3d-shader-1"
|
|
|
|
|
CP_WINE_FILES="d3d12 d3d12core d3d11 d3d10core d3d10_1 d3d10 d3d8 dxgi"
|
|
|
|
|
export __GL_YIELD="NOTHING"
|
|
|
|
|
export mesa_glthread="true"
|
|
|
|
|
export WINE_D3D_CONFIG="renderer=gl"
|
|
|
|
|
export PW_VKBASALT="0"
|
|
|
|
|
export PW_MANGOHUD="0"
|
|
|
|
|
export PW_WINE_FULLSCREEN_FSR="0"
|
|
|
|
|
export PW_USE_GALLIUM_ZINK="0"
|
|
|
|
|
export DXVK_ENABLE_NVAPI="0"
|
|
|
|
|
export PW_USE_VRCLIENT="0"
|
|
|
|
|
;;
|
|
|
|
|
5)
|
|
|
|
|
# LEGACY DXVK
|
|
|
|
|
print_info "DXVK v.${DXVK_LEGACY_VER} in use"
|
|
|
|
|
PATH_TO_DXVK_FILES="${PW_VULKAN_DIR}/dxvk-${DXVK_LEGACY_VER}"
|
|
|
|
|
PATH_TO_VKD3D_FILES="${PW_VULKAN_DIR}/vkd3d-proton-${VKD3D_GIT_VER}"
|
|
|
|
|
CP_DXVK_FILES="d3d11 d3d10core d3d10_1 d3d10 d3d9 dxgi"
|
|
|
|
|
CP_VKD3D_FILES="libvkd3d-1 libvkd3d-shader-1"
|
|
|
|
|
CP_WINE_FILES="d3d12 d3d12core d3d8"
|
|
|
|
|
;;
|
|
|
|
|
esac
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
# GALLIUM NINE
|
|
|
|
|
if [[ $PW_USE_GALLIUM_NINE == "1" ]] ; then
|
|
|
|
|
print_info "Use GALLIUM-NINE (Native DX9 on MESA drivers)"
|
|
|
|
|
unset PW_VKBASALT PW_MANGOHUD PW_WINE_FULLSCREEN_FSR DXVK_ENABLE_NVAPI PW_USE_VRCLIENT
|
|
|
|
|
rm_from_var CP_WINE_FILES "d3d9"
|
|
|
|
|
CP_GALLIUM_NINE_FILES="d3d9"
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
# GALLIUM ZINK
|
|
|
|
|
if [[ $PW_USE_GALLIUM_ZINK == "1" ]] ; then
|
|
|
|
|
# GALLIUM ZINK
|
|
|
|
|
print_info "Use GALLIUM-ZINK (OpenGL on MESA vulkan drivers)"
|
|
|
|
|
export __GL_YIELD="NOTHING"
|
|
|
|
|
export mesa_glthread="true"
|
|
|
|
|
export __GLX_VENDOR_LIBRARY_NAME="mesa"
|
|
|
|
|
export MESA_LOADER_DRIVER_OVERRIDE="zink"
|
|
|
|
|
export GALLIUM_DRIVER="zink"
|
|
|
|
@ -3693,14 +3696,25 @@ start_portwine () {
|
|
|
|
|
then
|
|
|
|
|
export LIBGL_KOPPER_DRI2="1"
|
|
|
|
|
fi
|
|
|
|
|
if [[ $(check_vendor_gpu) =~ nouveau ]] ; then
|
|
|
|
|
export NOUVEAU_USE_ZINK="1"
|
|
|
|
|
[[ $(check_vendor_gpu) =~ nouveau ]] && export NOUVEAU_USE_ZINK="1"
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
# WINED3D VULKAN
|
|
|
|
|
if [[ $PW_USE_WINED3D_VULKAN == "1" ]] ; then
|
|
|
|
|
print_info "Use DAMAVAND (DirectX to wined3d vulkan)"
|
|
|
|
|
export WINE_D3D_CONFIG="renderer=vulkan"
|
|
|
|
|
else
|
|
|
|
|
if [[ $PW_VULKAN_USE == "0" ]] \
|
|
|
|
|
|| [[ $PW_USE_GALLIUM_NINE == "1" ]] || [[ $PW_USE_GALLIUM_ZINK == "1" ]] ; then
|
|
|
|
|
export WINE_D3D_CONFIG="renderer=gl"
|
|
|
|
|
fi
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
export __GL_YIELD="NOTHING"
|
|
|
|
|
export mesa_glthread="true"
|
|
|
|
|
|
|
|
|
|
if [[ $PW_USE_SUPPLIED_DXVK_VKD3D == "1" ]] \
|
|
|
|
|
&& [[ ! $PW_WINE_USE =~ (PROTON_LG|WINE_LG) ]] \
|
|
|
|
|
&& [[ ! $PW_VULKAN_USE =~ (0|3) ]] \
|
|
|
|
|
&& [[ -f "${WINEDIR}/lib64/wine/dxvk/d3d9.dll" || -f "${WINEDIR}/lib/wine/dxvk/x86_64-windows/d3d9.dll" ]] ; then
|
|
|
|
|
export DXVK_ASYNC="1"
|
|
|
|
|
if [[ -f "${WINEDIR}/lib64/wine/dxvk/d3d10.dll" && -f "${WINEDIR}/lib64/wine/dxvk/d3d10_1.dll" ]] ; then
|
|
|
|
@ -3749,7 +3763,12 @@ start_portwine () {
|
|
|
|
|
try_remove_file "${WINEPREFIX}/drive_c/windows/system32/dgVoodoo.conf"
|
|
|
|
|
try_force_link_file "${DGV2CONF}" "${WINEPREFIX}/drive_c/windows/system32/dgVoodoo.conf"
|
|
|
|
|
|
|
|
|
|
if [[ $PW_USE_SUPPLIED_DXVK_VKD3D != "0" ]] ; then
|
|
|
|
|
if [[ $PW_USE_GALLIUM_NINE == "1" ]] ; then
|
|
|
|
|
rm_from_var CP_GALLIUM_NINE_FILES "d3d9"
|
|
|
|
|
rm_from_var CP_WINE_FILES "d3d8"
|
|
|
|
|
elif [[ $PW_USE_GALLIUM_ZINK == "1" ]] || [[ $PW_USE_WINED3D_VULKAN == "1" ]] ; then
|
|
|
|
|
rm_from_var CP_WINE_FILES "d3d9 d3d8"
|
|
|
|
|
elif [[ $PW_USE_SUPPLIED_DXVK_VKD3D != "0" ]] ; then
|
|
|
|
|
rm_from_var CP_DXVK_FILES "d3d9"
|
|
|
|
|
else
|
|
|
|
|
case "${PW_VULKAN_USE}" in
|
|
|
|
@ -3764,10 +3783,6 @@ start_portwine () {
|
|
|
|
|
rm_from_var CP_DXVK_FILES "d3d9 d3d8"
|
|
|
|
|
;;
|
|
|
|
|
3)
|
|
|
|
|
rm_from_var CP_GALLIUM_NINE_FILES "d3d9"
|
|
|
|
|
rm_from_var CP_WINE_FILES "d3d8"
|
|
|
|
|
;;
|
|
|
|
|
5)
|
|
|
|
|
rm_from_var CP_DXVK_FILES "d3d9"
|
|
|
|
|
rm_from_var CP_WINE_FILES "d3d8"
|
|
|
|
|
;;
|
|
|
|
@ -4038,7 +4053,8 @@ start_portwine () {
|
|
|
|
|
export VKD3D_SHADER_CACHE_PATH="${PATH_TO_VKD3D_FILES}/vkd3d_cache"
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
if [[ "$CP_GALLIUM_NINE_FILES" == "d3d9" ]] ; then
|
|
|
|
|
# GALLIUM NINE
|
|
|
|
|
if [[ "$CP_GALLIUM_NINE_FILES" == "d3d9" ]] && [[ -f "${PW_TMPFS_PATH}/gallium_nine.tmp" ]] ; then
|
|
|
|
|
PATH_TO_GALLIUM_NINE_FILES="${PW_PLUGINS_PATH}/gallium_nine_v.${PW_GALLIUM_NINE_VER}"
|
|
|
|
|
if [[ ! -d "$PATH_TO_GALLIUM_NINE_FILES" ]] ; then
|
|
|
|
|
if try_download "github.com/Castro-Fidel/vulkan/releases/download/gallium_nine_v.${PW_GALLIUM_NINE_VER}/gallium_nine_v.${PW_GALLIUM_NINE_VER}.tar.xz" \
|
|
|
|
@ -4052,28 +4068,8 @@ start_portwine () {
|
|
|
|
|
print_info "Try create symlink GALLIUM_NINE files..."
|
|
|
|
|
try_force_link_file "${PATH_TO_GALLIUM_NINE_FILES}/lib32/d3d9-nine.dll.so" "${WINEPREFIX}/drive_c/windows/syswow64/d3d9.dll"
|
|
|
|
|
try_force_link_file "${PATH_TO_GALLIUM_NINE_FILES}/lib64/d3d9-nine.dll.so" "${WINEPREFIX}/drive_c/windows/system32/d3d9.dll"
|
|
|
|
|
unset FIND_D3D_MODULE D3D_MODULE_PATH
|
|
|
|
|
if ! check_flatpak ; then
|
|
|
|
|
FIND_D3D_MODULE=$(dirname "$(find /usr/ -maxdepth 4 -type f -name "d3dadapter9.so.*" 2>/dev/null)")
|
|
|
|
|
if [[ -n "$FIND_D3D_MODULE" ]] ; then
|
|
|
|
|
IFS=$'\n'
|
|
|
|
|
for D3D_MP in $FIND_D3D_MODULE ; do
|
|
|
|
|
if [[ -n "$D3D_MODULE_PATH" ]]
|
|
|
|
|
then export D3D_MODULE_PATH="$D3D_MODULE_PATH:/run/host${D3D_MP}"
|
|
|
|
|
else export D3D_MODULE_PATH="/run/host${D3D_MP}"
|
|
|
|
|
fi
|
|
|
|
|
done
|
|
|
|
|
IFS="$orig_IFS"
|
|
|
|
|
print_info "D3D_MODULE_PATH=${D3D_MODULE_PATH}"
|
|
|
|
|
else
|
|
|
|
|
pw_stop_progress_bar
|
|
|
|
|
yad_error "${translations[d3dadapter9.so.1.0.0 - Not found in the system.\\nInstall the missing package: <b>d3dadapter9</b>]}"
|
|
|
|
|
stop_portwine
|
|
|
|
|
fi
|
|
|
|
|
else
|
|
|
|
|
export D3D_MODULE_PATH="/app/lib/i386-linux-gnu/GL/default/lib/d3d:/usr/lib/x86_64-linux-gnu/GL/default/lib/d3d"
|
|
|
|
|
print_info "D3D_MODULE_PATH=${D3D_MODULE_PATH}"
|
|
|
|
|
fi
|
|
|
|
|
export D3D_MODULE_PATH="$(<"${PW_TMPFS_PATH}/gallium_nine.tmp")"
|
|
|
|
|
print_info "D3D_MODULE_PATH=$D3D_MODULE_PATH"
|
|
|
|
|
var_winedlloverride_update "d3d9=n"
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
@ -5189,19 +5185,19 @@ gui_edit_db () {
|
|
|
|
|
PW_WINE_FULLSCREEN_FSR PW_HIDE_NVIDIA_GPU PW_VIRTUAL_DESKTOP PW_USE_TERMINAL PW_GUI_DISABLED_CS PW_USE_GAMEMODE
|
|
|
|
|
PW_USE_D3D_EXTRAS PW_FIX_VIDEO_IN_GAME PW_REDUCE_PULSE_LATENCY PW_USE_US_LAYOUT PW_USE_GSTREAMER
|
|
|
|
|
PW_USE_SHADER_CACHE PW_USE_WINE_DXGI PW_USE_EAC_AND_BE PW_USE_SYSTEM_VK_LAYERS PW_USE_OBS_VKCAPTURE
|
|
|
|
|
PW_DISABLE_COMPOSITING PW_USE_RUNTIME PW_DINPUT_PROTOCOL PW_USE_NATIVE_WAYLAND PW_USE_GALLIUM_ZINK PW_USE_GALLIUM_NINE
|
|
|
|
|
PW_USE_DAMAVAND PW_USE_SUPPLIED_DXVK_VKD3D
|
|
|
|
|
PW_DISABLE_COMPOSITING PW_USE_RUNTIME PW_DINPUT_PROTOCOL PW_USE_NATIVE_WAYLAND PW_USE_GALLIUM_ZINK
|
|
|
|
|
PW_USE_GALLIUM_NINE PW_USE_WINED3D_VULKAN PW_USE_SUPPLIED_DXVK_VKD3D
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
if check_wayland_session ; then
|
|
|
|
|
rm_from_array "PW_EDIT_DB_LIST" PW_USE_US_LAYOUT
|
|
|
|
|
else
|
|
|
|
|
rm_from_array "PW_EDIT_DB_LIST" PW_USE_NATIVE_WAYLAND
|
|
|
|
|
if check_wayland_session
|
|
|
|
|
then rm_from_array "PW_EDIT_DB_LIST" PW_USE_US_LAYOUT
|
|
|
|
|
else rm_from_array "PW_EDIT_DB_LIST" PW_USE_NATIVE_WAYLAND
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
if check_flatpak ; then
|
|
|
|
|
rm_from_array "PW_EDIT_DB_LIST" PW_USE_RUNTIME
|
|
|
|
|
fi
|
|
|
|
|
check_flatpak && rm_from_array "PW_EDIT_DB_LIST" PW_USE_RUNTIME
|
|
|
|
|
|
|
|
|
|
# GALLIUM NINE
|
|
|
|
|
[[ ! -f "${PW_TMPFS_PATH}/gallium_nine.tmp" ]] && rm_from_array "PW_EDIT_DB_LIST" PW_USE_GALLIUM_NINE
|
|
|
|
|
|
|
|
|
|
PW_MANGOHUD_INFO=${translations[Using FPS and system load monitoring (Turns on and off by the key combination - right Shift + F12)]}
|
|
|
|
|
PW_MANGOHUD_USER_CONF_INFO=${translations[Forced use of MANGOHUD system settings (GOverlay, etc.)]}
|
|
|
|
@ -5245,7 +5241,7 @@ gui_edit_db () {
|
|
|
|
|
PW_USE_NATIVE_WAYLAND_INFO=${translations[Enable experemental native Wayland support (need special wine build to work)]}
|
|
|
|
|
PW_USE_GALLIUM_ZINK_INFO=${translations[Use Gallium Zink (OpenGL driver is implemented via Vulkan)]}
|
|
|
|
|
PW_USE_GALLIUM_NINE_INFO=${translations[Use Gallium Nine (native DirectX 9 for MESA)]}
|
|
|
|
|
PW_USE_DAMAVAND_INFO=${translations[Instead of DXVK, use WineD3D vulkan (Damavand). Experimental function.]}
|
|
|
|
|
PW_USE_WINED3D_VULKAN_INFO=${translations[Instead of DXVK, use WineD3D vulkan (Damavand). Experimental function.]}
|
|
|
|
|
PW_USE_SUPPLIED_DXVK_VKD3D_INFO=${translations[Use dxvk and vkd3d which are bundled with wine or proton. (Does not work with PROTON_LG and WINE_LG)]}
|
|
|
|
|
|
|
|
|
|
# PW_VULKAN_NO_ASYNC_INFO=${translations[Disable asynchronous calls for VULKAN and DXVK modes]}
|
|
|
|
@ -5257,20 +5253,23 @@ gui_edit_db () {
|
|
|
|
|
0)
|
|
|
|
|
# WineD3D OpenGL
|
|
|
|
|
VKD3D_CB="DCB"
|
|
|
|
|
DISABLE_EDIT_DB_LIST="PW_VKBASALT PW_VKBASALT_USER_CONF PW_USE_RAY_TRACING PW_USE_OBS_VKCAPTURE PW_USE_GALLIUM_ZINK PW_USE_DAMAVAND"
|
|
|
|
|
DISABLE_EDIT_DB_LIST="PW_VKBASALT PW_VKBASALT_USER_CONF PW_USE_RAY_TRACING PW_USE_OBS_VKCAPTURE PW_USE_GALLIUM_ZINK PW_USE_WINED3D_VULKAN"
|
|
|
|
|
;;
|
|
|
|
|
1|2)
|
|
|
|
|
# Stable, Newest
|
|
|
|
|
VKD3D_CB="CB"
|
|
|
|
|
;;
|
|
|
|
|
5)
|
|
|
|
|
3)
|
|
|
|
|
# Legacy
|
|
|
|
|
VKD3D_CB="DCB"
|
|
|
|
|
DISABLE_EDIT_DB_LIST="PW_USE_RAY_TRACING"
|
|
|
|
|
;;
|
|
|
|
|
esac
|
|
|
|
|
|
|
|
|
|
[[ $PW_WINE_USE =~ (PROTON_LG|WINE_LG) ]] && DISABLE_EDIT_DB_LIST+=" PW_USE_SUPPLIED_DXVK_VKD3D"
|
|
|
|
|
if [[ $PW_WINE_USE =~ (PROTON_LG|WINE_LG) ]] \
|
|
|
|
|
|| [[ $PW_VULKAN_USE == "0" ]] ; then
|
|
|
|
|
DISABLE_EDIT_DB_LIST+=" PW_USE_SUPPLIED_DXVK_VKD3D"
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
unset ADD_CHK_BOX_EDIT_DB
|
|
|
|
|
for int_to_boole in "${PW_EDIT_DB_LIST[@]}" ; do
|
|
|
|
@ -5860,7 +5859,7 @@ gui_dgvoodoo2 () {
|
|
|
|
|
[[ "${PW_DGV2_ANTIALIASING}" == "0" ]] && export PW_DGV2_ANTIALIASING="disabled" && edit_db_from_gui PW_DGV2_ANTIALIASING
|
|
|
|
|
|
|
|
|
|
case "${PW_VULKAN_USE}" in
|
|
|
|
|
0|5)
|
|
|
|
|
0|3)
|
|
|
|
|
DISABLE_DGV2_LIST="PW_DGV2_USE_DX12
|
|
|
|
|
"
|
|
|
|
|
;;
|
|
|
|
@ -6886,8 +6885,7 @@ portwine_start_debug () {
|
|
|
|
|
0) echo "PW_VULKAN_USE=${PW_VULKAN_USE} - DirectX to wined3d opengl" >> "${PORT_WINE_PATH}/PortProton.log" ;;
|
|
|
|
|
1) echo "PW_VULKAN_USE=${PW_VULKAN_USE} - DXVK v.${DXVK_STABLE_VER}, VKD3D-PROTON v.${VKD3D_STABLE_VER}" >> "${PORT_WINE_PATH}/PortProton.log" ;;
|
|
|
|
|
2) echo "PW_VULKAN_USE=${PW_VULKAN_USE} - DXVK v.${DXVK_GIT_VER}, VKD3D-PROTON v.${VKD3D_GIT_VER}" >> "${PORT_WINE_PATH}/PortProton.log" ;;
|
|
|
|
|
3) echo "PW_VULKAN_USE=${PW_VULKAN_USE} - Native DX9 on MESA drivers" >> "${PORT_WINE_PATH}/PortProton.log" ;;
|
|
|
|
|
5) echo "PW_VULKAN_USE=${PW_VULKAN_USE} - DXVK v.${DXVK_LEGACY_VER}" >> "${PORT_WINE_PATH}/PortProton.log" ;;
|
|
|
|
|
3) echo "PW_VULKAN_USE=${PW_VULKAN_USE} - DXVK v.${DXVK_LEGACY_VER}" >> "${PORT_WINE_PATH}/PortProton.log" ;;
|
|
|
|
|
*) echo "PW_VULKAN_USE=${PW_VULKAN_USE}" >> "${PORT_WINE_PATH}/PortProton.log" ;;
|
|
|
|
|
esac
|
|
|
|
|
echo "--------------------------------------------" >> "${PORT_WINE_PATH}/PortProton.log"
|
|
|
|
|