Refactoring 3D api: Interface acceleration
This commit is contained in:
@ -871,9 +871,7 @@ check_vendor_gpu () {
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
if command -v glxinfo &>/dev/null ; then
|
if command -v glxinfo &>/dev/null ; then
|
||||||
if [[ ! -f "${PW_TMPFS_PATH}/glxinfo.tmp" ]] ; then
|
pw_check_glxinfo
|
||||||
glxinfo -B &> "${PW_TMPFS_PATH}/glxinfo.tmp"
|
|
||||||
fi
|
|
||||||
case "$(<"${PW_TMPFS_PATH}/glxinfo.tmp" tr '[:upper:]' '[:lower:]')" in
|
case "$(<"${PW_TMPFS_PATH}/glxinfo.tmp" tr '[:upper:]' '[:lower:]')" in
|
||||||
*nvidia*)
|
*nvidia*)
|
||||||
[[ -d /sys/bus/pci/drivers/nvidia ]] && VENDOR_GPU_USE+=("nvidia")
|
[[ -d /sys/bus/pci/drivers/nvidia ]] && VENDOR_GPU_USE+=("nvidia")
|
||||||
@ -2828,7 +2826,6 @@ pw_get_tmp_files () {
|
|||||||
done
|
done
|
||||||
|
|
||||||
pw_check_vulkan
|
pw_check_vulkan
|
||||||
pw_check_glxinfo
|
|
||||||
|
|
||||||
# GALLIUM NINE
|
# GALLIUM NINE
|
||||||
unset FIND_D3D_MODULE D3D_MODULE_PATH
|
unset FIND_D3D_MODULE D3D_MODULE_PATH
|
||||||
|
@ -307,6 +307,7 @@ if [[ "${SKIP_CHECK_UPDATES}" != 1 ]] ; then
|
|||||||
export PW_FILESYSTEM
|
export PW_FILESYSTEM
|
||||||
|
|
||||||
background_pid --start "pw_get_tmp_files" "1"
|
background_pid --start "pw_get_tmp_files" "1"
|
||||||
|
background_pid --start "pw_check_glxinfo" "2"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# create lock file
|
# create lock file
|
||||||
@ -532,24 +533,6 @@ SORT_SAREK="${translations[DXVK, VKD3D (Sarek) (Vulkan v1.1+)]}"
|
|||||||
SORT_STABLE="${translations[DXVK, VKD3D (Stable) (Vulkan v1.3+)]}"
|
SORT_STABLE="${translations[DXVK, VKD3D (Stable) (Vulkan v1.3+)]}"
|
||||||
SORT_NEWEST="${translations[DXVK, VKD3D (Newest) (Vulkan v1.3+)]}"
|
SORT_NEWEST="${translations[DXVK, VKD3D (Newest) (Vulkan v1.3+)]}"
|
||||||
|
|
||||||
if [[ -z $PW_VULKAN_USE ]] \
|
|
||||||
|| [[ $PW_VULKAN_USE == [3-5] ]]
|
|
||||||
then
|
|
||||||
pw_check_glxinfo
|
|
||||||
if [[ -e "/sys/module/nvidia/version" && $(</sys/module/nvidia/version) > 550.54.13 ]] \
|
|
||||||
|| [[ $(grep "Version:" "$PW_TMPFS_PATH/glxinfo.tmp" | awk '{print $2}') > 25 ]]
|
|
||||||
then export PW_VULKAN_USE="6"
|
|
||||||
else export PW_VULKAN_USE="2"
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
case "$PW_VULKAN_USE" in
|
|
||||||
0) PW_DEFAULT_VULKAN_USE="$SORT_OPENGL!$SORT_NEWEST!$SORT_STABLE!$SORT_SAREK" ;;
|
|
||||||
1) PW_DEFAULT_VULKAN_USE="$SORT_SAREK!$SORT_NEWEST!$SORT_STABLE!$SORT_OPENGL" ;;
|
|
||||||
2) PW_DEFAULT_VULKAN_USE="$SORT_STABLE!$SORT_NEWEST!$SORT_SAREK!$SORT_OPENGL" ;;
|
|
||||||
*) PW_DEFAULT_VULKAN_USE="$SORT_NEWEST!$SORT_STABLE!$SORT_SAREK!$SORT_OPENGL" ;;
|
|
||||||
esac
|
|
||||||
|
|
||||||
if [[ $PW_WINE_USE == PROTON_LG ]] ; then
|
if [[ $PW_WINE_USE == PROTON_LG ]] ; then
|
||||||
PW_WINE_USE="${PW_PROTON_LG_VER}"
|
PW_WINE_USE="${PW_PROTON_LG_VER}"
|
||||||
PW_DEFAULT_WINE_USE="${PW_WINE_LG_VER}${DIST_ADD_TO_GUI}!${translations[GET-OTHER-WINE]}"
|
PW_DEFAULT_WINE_USE="${PW_WINE_LG_VER}${DIST_ADD_TO_GUI}!${translations[GET-OTHER-WINE]}"
|
||||||
@ -594,6 +577,30 @@ if [[ -f "$portwine_exe" ]] ; then
|
|||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
if [[ -z $PW_VULKAN_USE ]] \
|
||||||
|
|| [[ $PW_VULKAN_USE == [3-5] ]]
|
||||||
|
then
|
||||||
|
if [[ -e "/sys/module/nvidia/version" ]] ;then
|
||||||
|
if [[ $(</sys/module/nvidia/version) > 550.54.13 ]]
|
||||||
|
then export PW_VULKAN_USE="6"
|
||||||
|
else export PW_VULKAN_USE="2"
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
background_pid --stop "pw_check_glxinfo" "2"
|
||||||
|
if [[ $(grep "Version:" "$PW_TMPFS_PATH/glxinfo.tmp" | awk '{print $2}') > 24.9.9 ]]
|
||||||
|
then export PW_VULKAN_USE="6"
|
||||||
|
else export PW_VULKAN_USE="2"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
case "$PW_VULKAN_USE" in
|
||||||
|
0) PW_DEFAULT_VULKAN_USE="$SORT_OPENGL!$SORT_NEWEST!$SORT_STABLE!$SORT_SAREK" ;;
|
||||||
|
1) PW_DEFAULT_VULKAN_USE="$SORT_SAREK!$SORT_NEWEST!$SORT_STABLE!$SORT_OPENGL" ;;
|
||||||
|
2) PW_DEFAULT_VULKAN_USE="$SORT_STABLE!$SORT_NEWEST!$SORT_SAREK!$SORT_OPENGL" ;;
|
||||||
|
*) PW_DEFAULT_VULKAN_USE="$SORT_NEWEST!$SORT_STABLE!$SORT_SAREK!$SORT_OPENGL" ;;
|
||||||
|
esac
|
||||||
|
|
||||||
export KEY_START="$RANDOM"
|
export KEY_START="$RANDOM"
|
||||||
if [[ $PW_GUI_START == "NOTEBOOK" ]] ; then
|
if [[ $PW_GUI_START == "NOTEBOOK" ]] ; then
|
||||||
"${pw_yad}" --plug=$KEY_START --tabnum=1 --form --separator=";" $START_GUI_TYPE \
|
"${pw_yad}" --plug=$KEY_START --tabnum=1 --form --separator=";" $START_GUI_TYPE \
|
||||||
@ -841,6 +848,8 @@ else
|
|||||||
else export PW_GUI_SORT_TABS=(2 3 4 5 1)
|
else export PW_GUI_SORT_TABS=(2 3 4 5 1)
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
PW_DEFAULT_VULKAN_USE="$SORT_NEWEST!$SORT_STABLE!$SORT_SAREK!$SORT_OPENGL"
|
||||||
|
|
||||||
KEY_MENU="$RANDOM"
|
KEY_MENU="$RANDOM"
|
||||||
|
|
||||||
IFS="%"
|
IFS="%"
|
||||||
|
Reference in New Issue
Block a user