diff --git a/data_from_portwine/scripts/functions_helper b/data_from_portwine/scripts/functions_helper index cfd8c87..8e934f3 100755 --- a/data_from_portwine/scripts/functions_helper +++ b/data_from_portwine/scripts/functions_helper @@ -1752,10 +1752,6 @@ start_portwine () { var_winedlloverride_update "nvngx,_nvngx=" fi - if [[ "${PW_USE_GALLIUM_ZINK}" == 1 ]] - then export PW_VULKAN_USE=5 - fi - if [[ "${PW_HEAP_DELAY_FREE}" == 1 ]] then export WINE_HEAP_DELAY_FREE="1" else export WINE_HEAP_DELAY_FREE="0" @@ -1926,17 +1922,6 @@ start_portwine () { export GL_YIELD="NOTHING" export mesa_glthread=true export WINE_D3D_CONFIG='renderer=gl' - elif [[ "${PW_VULKAN_USE}" == "5" ]] ; then - print_info "Use OpenGL Zink" - export GL_YIELD="NOTHING" - export mesa_glthread=true - export WINE_D3D_CONFIG='renderer=gl' - export __GLX_VENDOR_LIBRARY_NAME=mesa - export MESA_LOADER_DRIVER_OVERRIDE=zink - export GALLIUM_DRIVER=zink - if [[ "${XDG_SESSION_TYPE}" != "wayland" ]] || [[ "${PW_USE_GAMESCOPE}" != 1 ]] ; then - export LIBGL_KOPPER_DRI2=1 - fi elif [[ "${PW_VULKAN_USE}" == "3" ]] ; then print_info "Use GALLIUM-NINE (Native DX9 on MESA drivers)" export PW_GALLIUM_NINE_PATH="${PW_PLUGINS_PATH}/gallium_nine_v.${PW_GALLIUM_NINE_VER}" @@ -1972,6 +1957,16 @@ start_portwine () { export PW_MANGOHUD=0 export WINE_FULLSCREEN_FSR=0 elif [[ "${PW_VULKAN_USE}" == "4" ]] ; then + print_info "Use GALLIUM-ZINK (OpenGL on MESA vulkan drivers)" + export GL_YIELD="NOTHING" + export mesa_glthread=true + export WINE_D3D_CONFIG='renderer=gl' + export __GLX_VENDOR_LIBRARY_NAME=mesa + export MESA_LOADER_DRIVER_OVERRIDE=zink + if [[ "${XDG_SESSION_TYPE}" != "wayland" ]] || [[ "${PW_USE_GAMESCOPE}" != 1 ]] ; then + export LIBGL_KOPPER_DRI2=1 + fi + elif [[ "${PW_VULKAN_USE}" == "5" ]] ; then print_info "Use DAMAVAND (DirectX to wined3d vulkan)" export WINE_D3D_CONFIG='renderer=vulkan' else @@ -2632,7 +2627,6 @@ pw_gui_for_edit_db () { PW_RESTORE_RESOLUTION_INFO=$(eval_gettext 'Remember the screen resolution when starting the game and return it when closing (useful for games that change the screen resolution when closing)') PW_USE_SYSTEM_VK_LAYERS_INFO=$(eval_gettext 'Use system mangohud, vkBasalt, obs-vkcapture and other applications using vulkan layers') PW_USE_OBS_VKCAPTURE_INFO=$(eval_gettext 'Enable the ability to write to OBS Studio using obs-vkcapture (ATTENTION: the forced use of system mangohud, vkBasalt, obs-vkcapture and other applications using vulkan layers will be enabled)') - PW_USE_GALLIUM_ZINK_INFO=$(eval_gettext 'Use the zink driver (OpenGL on top of Vulkan), allows you to use vkBasalt in OpenGL games (ATTENTION: vulkan support is required, wined3d (opengl) is used instead of dxvk, suitable for games on OpenGL and older versions of DirectX, artifacts are possible on newer versions of DirectX)') PW_DISABLE_COMPOSITING_INFO=$(eval_gettext 'Disable desktop compositing (effects). It often improves performance.') PW_USE_GAMESCOPE_INFO=$(eval_gettext " Super + F : Toggle fullscreen @@ -3581,6 +3575,8 @@ portwine_start_debug () { elif [[ "${PW_VULKAN_USE}" = "3" ]] ; then echo "PW_VULKAN_USE=${PW_VULKAN_USE} - native DX9 on MESA drivers" >> "${PORT_WINE_PATH}/PortProton.log" elif [[ "${PW_VULKAN_USE}" = "4" ]] ; then + echo "PW_VULKAN_USE=${PW_VULKAN_USE} - OpenGL on MESA vulkan drivers" >> "${PORT_WINE_PATH}/PortProton.log" + elif [[ "${PW_VULKAN_USE}" = "5" ]] ; then echo "PW_VULKAN_USE=${PW_VULKAN_USE} - DirectX to wined3d vulkan" >> "${PORT_WINE_PATH}/PortProton.log" else echo "PW_VULKAN_USE=${PW_VULKAN_USE}" >> "${PORT_WINE_PATH}/PortProton.log" @@ -3762,14 +3758,14 @@ pw_edit_db () { PW_USE_NVAPI_AND_DLSS PW_USE_FAKE_DLSS PW_USE_FAKE_DLSS_3 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_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 PW_USE_GAMESCOPE PW_DISABLE_COMPOSITING PW_USE_RUNTIME + PW_USE_OBS_VKCAPTURE PW_USE_GAMESCOPE PW_DISABLE_COMPOSITING PW_USE_RUNTIME else pw_gui_for_edit_db \ PW_MANGOHUD PW_MANGOHUD_USER_CONF ENABLE_VKBASALT PW_VKBASALT_USER_CONF PW_NO_ESYNC PW_NO_FSYNC PW_USE_RAY_TRACING \ PW_USE_NVAPI_AND_DLSS PW_USE_FAKE_DLSS PW_USE_FAKE_DLSS_3 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_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 PW_USE_GAMESCOPE PW_DISABLE_COMPOSITING PW_USE_RUNTIME + PW_USE_SYSTEM_VK_LAYERS PW_USE_OBS_VKCAPTURE PW_USE_GAMESCOPE PW_DISABLE_COMPOSITING PW_USE_RUNTIME fi # PW_FORCE_USE_VSYNC HEAP_DELAY_FREE } diff --git a/data_from_portwine/scripts/start.sh b/data_from_portwine/scripts/start.sh index c08b4e0..a5ccdc5 100755 --- a/data_from_portwine/scripts/start.sh +++ b/data_from_portwine/scripts/start.sh @@ -323,13 +323,15 @@ check_nvidia_rtx && check_variables PW_VULKAN_USE "2" SORT_OPENGL="$(eval_gettext "OPENGL (For video cards without VULKAN)")" SORT_STABLE="$(eval_gettext "Stable") DXVK ${DXVK_STABLE_VER}, VKD3D ${VKD3D_STABLE_VER}" SORT_NEWEST="$(eval_gettext "Newest") DXVK ${DXVK_GIT_VER}, VKD3D ${VKD3D_GIT_VER}" -SORT_GALLIUM="$(eval_gettext "GALLIUM_NINE (DX9 for MESA)")" +SORT_G_NINE="$(eval_gettext "GALLIUM_NINE (DX9 for MESA)")" +SORT_G_ZINK="$(eval_gettext "GALLIUM_ZINK (OpenGL for VULKAN)")" case "${PW_VULKAN_USE}" in - 0) PW_DEFAULT_VULKAN_USE="$SORT_OPENGL!$SORT_STABLE!$SORT_NEWEST!$SORT_GALLIUM" ;; - 1) PW_DEFAULT_VULKAN_USE="$SORT_STABLE!$SORT_NEWEST!$SORT_OPENGL!$SORT_GALLIUM" ;; - 3) PW_DEFAULT_VULKAN_USE="$SORT_GALLIUM!$SORT_STABLE!$SORT_NEWEST!$SORT_OPENGL" ;; - *) PW_DEFAULT_VULKAN_USE="$SORT_NEWEST!$SORT_STABLE!$SORT_OPENGL!$SORT_GALLIUM" ;; + 0) PW_DEFAULT_VULKAN_USE="$SORT_OPENGL!$SORT_STABLE!$SORT_NEWEST!$SORT_G_NINE!$SORT_G_ZINK" ;; + 1) PW_DEFAULT_VULKAN_USE="$SORT_STABLE!$SORT_NEWEST!$SORT_OPENGL!$SORT_G_NINE!$SORT_G_ZINK" ;; + 3) PW_DEFAULT_VULKAN_USE="$SORT_G_NINE!$SORT_STABLE!$SORT_NEWEST!$SORT_OPENGL!$SORT_G_ZINK" ;; + 4) PW_DEFAULT_VULKAN_USE="$SORT_G_ZINK!$SORT_OPENGL!$SORT_STABLE!$SORT_NEWEST!$SORT_G_NINE" ;; + *) PW_DEFAULT_VULKAN_USE="$SORT_NEWEST!$SORT_STABLE!$SORT_OPENGL!$SORT_G_NINE!$SORT_G_ZINK" ;; esac if [[ ! -z "${PORTWINE_DB_FILE}" ]] ; then @@ -568,7 +570,8 @@ case "${VULKAN_MOD}" in "$SORT_OPENGL" ) export PW_VULKAN_USE="0" ;; "$SORT_STABLE" ) export PW_VULKAN_USE="1" ;; "$SORT_NEWEST" ) export PW_VULKAN_USE="2" ;; - "$SORT_GALLIUM" ) export PW_VULKAN_USE="3" ;; + "$SORT_G_NINE" ) export PW_VULKAN_USE="3" ;; + "$SORT_G_ZINK" ) export PW_VULKAN_USE="4" ;; esac init_wine_ver