Paramètres d'écran du jeu sur Linux (Bottles)

Vooxis Messages postés 9 Date d'inscription dimanche 21 mai 2023 Statut Membre Dernière intervention 22 novembre 2024 - 21 nov. 2024 à 08:07
luckydu43 Messages postés 3985 Date d'inscription vendredi 9 janvier 2015 Statut Membre Dernière intervention 23 décembre 2024 - 25 nov. 2024 à 09:59

Bonjour,

Pour cette fois, ci, une IA n'arrive pas à répondre à ma demande... Je me tourne donc vers des humains qui sauront me répondre j'en suis sûr !

Depuis peu, j'ai changé d'os (Windows --> Linux (PoP!_Os)) et j'eu l'idée d'installer des petits jeux, sur Steam, aucun problème... Mais quand il s'agit d'émuler des lanceurs de jeux (prennons l'exemple de Ubisoft Connect) ça marche parfaitement, tout du moins, juste pour le lanceur. En effet, j'arrive à télécharger mes jeux sans soucis (sur un autre SSD configuré dans Bottles avant), le problème étant que lorsque je veux le lancer (ex avec Assassin's Creed Origins), tout ce passe parfaitement mais je reste bloqué à du 60hz (alors que mon écran et mon GPU peuvent en afficher plus ou moins 240). Donc mon problème est que quand je lance Assassin's Creed Origins et que je met tout dans les paramètres graphique (2560x1440 et 240hz), j'ai du 60hz à la bonne résolution par contre...

Sachant que je n'ai jamais eu de problème sous Windows, j'en conclus que le problème n'est pas matériel mais logiciel.

Faut-il que j'utilise autre chose que Bottles ? Me manque-t-il un soft ? Un paramètre ? Une commande ?

Je vous remercie pour vos réponses.

Config :

GPU : RX 6600 XT

Écran : ASUS 27" 2K 240HZ BRANCHÉ EN DISPLAY PORT

A voir également:

2 réponses

luckydu43 Messages postés 3985 Date d'inscription vendredi 9 janvier 2015 Statut Membre Dernière intervention 23 décembre 2024 982
21 nov. 2024 à 10:59

Bonjour,

Comme tout dans Linux, dès que ça marche pas faut une ligne de commandes.

Pour avoir joué sous Linux aussi (Mint, pas Pop!_OS), c'était compliqué de faire marcher à l'optimal, pour pas dire plus :-D 

Ma procédure était plus velue que celle que je fournis plus bas. Merci Pop!_OS et ta gestion améliorée des drivers !

J'ai résumé toutes les étapes de configuration dans un script qui va créer un lanceur pour le lanceur Ubisoft Connect (oui) avec les paramètres 240Hz pour les jeux (sur le moment ça me paraissait plus simple à faire faire) :

#!/bin/bash
if [[ $EUID -eq 0 ]]; then
    echo "Ne pas exécuter ce script en tant que root !"
    echo "Il faut le bon profil utilisateur."
    echo "Si root est effectivement le bon profil, supprimez cette vérification"
    exit 1
fi
WINEPREFIX="$HOME/.wine-ubisoft"
DXVK_CONFIG_FILE="$HOME/dxvk.conf"
LAUNCH_SCRIPT="$HOME/start-ubisoft.sh"
DEFAULT_SEARCH_PATH="$HOME/.wine-ubisoft/drive_c"

echo "Étape 1/6 : Installation des dépendances nécessaires des fois qu il en manque..."
sudo apt update
sudo apt install -y lutris wine winetricks vulkan-tools mesa-vulkan-drivers mesa-utils libgl1-mesa-dri libvulkan1 libglx-mesa0 libgles2-mesa

echo "Étape 2/6 : Création du préfixe Wine pour Ubisoft Connect..."
if [ ! -d "$WINEPREFIX" ]; then
    WINEPREFIX=$WINEPREFIX wineboot --init
    echo "Préfixe Wine initialisé dans $WINEPREFIX"
else
    echo "Préfixe Wine déjà présent. Aucun changement nécessaire."
fi

echo "Étape 3/6 : Recherche de l exécutable Ubisoft Connect..."
UBISOFT_CONNECT_PATH=$(find "$DEFAULT_SEARCH_PATH" -type f -iname "UbisoftConnect.exe" 2>/dev/null | head -n 1)
if [ -z "$UBISOFT_CONNECT_PATH" ]; then
    echo "Erreur : Impossible de trouver Ubisoft Connect.exe dans Wine."
    echo "Veuillez préciser manuellement le chemin dans le fichier $LAUNCH_SCRIPT après création."
    echo "Il faut modifier la ligne 5 : wine $UBISOFT_CONNECT_PATH"
    echo "N oubliez pas cette étape !"
else
    echo "Ubisoft Connect trouvé : $UBISOFT_CONNECT_PATH"
fi

echo "Étape 4/6 : Configuration de DXVK pour limite à 240Hz..."
cat <<EOF > "$DXVK_CONFIG_FILE"
dxgi.maxFrameRate = 240
EOF
echo "Fichier de configuration DXVK créé à $DXVK_CONFIG_FILE"

echo "Étape 5/6 : Création du script de démarrage pour Ubisoft Connect..."

cat <<EOF > "$LAUNCH_SCRIPT"
#!/bin/bash
export WINEPREFIX="$WINEPREFIX"
export DXVK_CONFIG_FILE="$DXVK_CONFIG_FILE"
export WINEDEBUG=-all
export __GL_SYNC_TO_VBLANK=0
wine "$UBISOFT_CONNECT_PATH"
EOF

chmod +x "$LAUNCH_SCRIPT"
echo "Script de démarrage créé à $LAUNCH_SCRIPT"

echo "Étape 6/6 : Création de la commande start-ubisoft"
if ! grep -q "alias start-ubisoft=" "$HOME/.bashrc"; then
    echo "alias start-ubisoft='$LAUNCH_SCRIPT'" >> "$HOME/.bashrc"
    echo "Alias start-ubisoft ajouté à .bashrc"
    source "$HOME/.bashrc"
else
    echo "Alias start-ubisoft déjà présent."
fi

echo "Configuration terminée !"
echo "Lancez Ubisoft Connect avec : start-ubisoft"

Il n'est pas vraiment  compliqué, si vous avez un doute sur une des lignes, dites-moi.

Copiez ce script dans un fichier .sh, disons conf-ubisoft.sh

Dans le dossier où se trouve le script, ouvrez un terminal.

Rendez exécutable le fichier .sh avec

chmod +x conf-ubisoft.sh

Exécutez-le avec 

sh ./conf-ubisoft.sh

Une fois toutes les étapes du script réalisées, vous ne lancez Ubisoft Connect qu'avec start-ubisoft qui lancera un script avec les bonnes options avant de lancer lui-même Ubisoft Connect.

Si ça doit concerner d'autres lanceurs, dites-moi, j'ajusterai le script en conséquence.

Si le script est en erreur, dites-moi exactement ce qui est affiché.


0
Vooxis Messages postés 9 Date d'inscription dimanche 21 mai 2023 Statut Membre Dernière intervention 22 novembre 2024
21 nov. 2024 à 15:11

Bonjour, merci pour votre réponse très rapide !

Mais j'ai installé Bottles avec flatpack (classique) mais j'ai mis la data générale de mes bottles (dans l'accueil, les trois points ou roue cranté, et tout en bas, j'ai changé le chemin) dans un autre chemin. Et je met chaque jeu et chaque lanceur dans un disque différent, Y-a-t-il un impact sur votre script, dois-je modifier quelques choses ?

Merci

0
Vooxis Messages postés 9 Date d'inscription dimanche 21 mai 2023 Statut Membre Dernière intervention 22 novembre 2024
21 nov. 2024 à 19:24

Re,

Après avoir edité le fichier pour y mettre les bons chemins, lorsque je fais la commande "start-ubisoft", rien ne se passe, rien ne se lance...

Pourriez-vous m'aiguiller ?

Merci :-)

0
luckydu43 Messages postés 3985 Date d'inscription vendredi 9 janvier 2015 Statut Membre Dernière intervention 23 décembre 2024 982
Modifié le 22 nov. 2024 à 09:49

Normalement le lanceur connaît le chemin du jeu, il suffit de lancer le lanceur avec les bons paramètres pour exécuter les jeux sans problème.

Je rappelle que j'ai tourné ce script uniquement pour Ubi, si y a d'autres faut prévenir :-)

Le script une fois lancé n'a affiché que les lignes "Etape 1/6 ... 6/6 Fin" sans erreur ?

0
Vooxis Messages postés 9 Date d'inscription dimanche 21 mai 2023 Statut Membre Dernière intervention 22 novembre 2024 > luckydu43 Messages postés 3985 Date d'inscription vendredi 9 janvier 2015 Statut Membre Dernière intervention 23 décembre 2024
22 nov. 2024 à 10:10

Absolument, je n'ai aucune erreur, c'est quand je lance start-ubisoft, qu'il ne se passe rien, j'ai une erreur qui s'affiche plusieurs fois (je ne l'ai pas sous la main désolé).

0
Vooxis Messages postés 9 Date d'inscription dimanche 21 mai 2023 Statut Membre Dernière intervention 22 novembre 2024 > Vooxis Messages postés 9 Date d'inscription dimanche 21 mai 2023 Statut Membre Dernière intervention 22 novembre 2024
22 nov. 2024 à 21:28

Voici les erreurs :

xxxxxxxxx@pop-os:~$ start-ubisoft
xxxxxxxxx@pop-os:~$ wine: Call from 7BC2CEA0 to unimplemented function KERNEL32.dll.DiscardVirtualMemory, aborting
wine: Call from 7BC2CEA0 to unimplemented function KERNEL32.dll.DiscardVirtualMemory, aborting
wine: Call from 7BC2CEA0 to unimplemented function KERNEL32.dll.DiscardVirtualMemory, aborting
wine: Call from 7BC2CEA0 to unimplemented function KERNEL32.dll.DiscardVirtualMemory, aborting
0
luckydu43 Messages postés 3985 Date d'inscription vendredi 9 janvier 2015 Statut Membre Dernière intervention 23 décembre 2024 982 > Vooxis Messages postés 9 Date d'inscription dimanche 21 mai 2023 Statut Membre Dernière intervention 22 novembre 2024
Modifié le 25 nov. 2024 à 10:00

Bonjour,

C'est une erreur wine, dommage c'est exactement ce que le script cherche à faire : modifier les paramètres de wine au lancement --'

Je retente une version en ajoutant des dépendances à Wine avec winetricks. J'ai aussi été plus clair dans le logging si ça pète encore.

Remplacez le contenu du script précédent par le code ci-dessous et relancez comme avant avec sh

#!/bin/bash

if [[ $EUID -eq 0 ]]; then
    echo -e "\e[1;31m[ERROR]\e[0m Ne pas exécuter ce script en tant que root !"
    echo "Il faut le bon profil utilisateur."
    echo "Si root est effectivement le bon profil, supprimez cette vérification."
    exit 1
fi

# Variables
WINEPREFIX="$HOME/.wine-ubisoft"
DXVK_CONFIG_FILE="$HOME/dxvk.conf"
LAUNCH_SCRIPT="$HOME/start-ubisoft.sh"
DEFAULT_SEARCH_PATH="$WINEPREFIX/drive_c"

log() {
    echo -e "\e[1;32m[INFO]\e[0m $1"
}
error() {
    echo -e "\e[1;31m[ERROR]\e[0m $1"
    exit 1
}

log "Étape 1/6 : Installation des dépendances nécessaires..."
sudo apt update
sudo apt install -y lutris wine winetricks vulkan-tools mesa-vulkan-drivers mesa-utils libgl1-mesa-dri libvulkan1 libglx-mesa0 libgles2-mesa || error "Échec de l'installation des dépendances."

log "Étape 2/6 : Création ou vérification du préfixe Wine pour Ubisoft Connect..."
if [ ! -d "$WINEPREFIX" ]; then
    export WINEPREFIX="$WINEPREFIX"
    wineboot --init >/dev/null 2>&1 || error "Échec de l'initialisation du préfixe Wine."
    log "Préfixe Wine initialisé dans $WINEPREFIX."
else
    log "Préfixe Wine déjà présent. Aucun changement nécessaire."
fi

log "Étape 3/6 : Recherche de l'exécutable Ubisoft Connect..."
UBISOFT_CONNECT_PATH=$(find "$DEFAULT_SEARCH_PATH" -type f -iname "UbisoftConnect.exe" 2>/dev/null | head -n 1)
if [ -z "$UBISOFT_CONNECT_PATH" ]; then
    error "Impossible de trouver UbisoftConnect.exe dans le préfixe Wine. Installez Ubisoft Connect manuellement ou spécifiez un chemin."
else
    log "Ubisoft Connect trouvé : $UBISOFT_CONNECT_PATH."
fi

log "Étape 4/6 : Configuration de DXVK pour une limite de 240Hz..."
cat <<EOF > "$DXVK_CONFIG_FILE"
dxgi.maxFrameRate = 240
EOF
log "Fichier de configuration DXVK créé à $DXVK_CONFIG_FILE."

log "Étape 5/6 : Création du script de démarrage pour Ubisoft Connect..."
cat <<EOF > "$LAUNCH_SCRIPT"
#!/bin/bash
export DXVK_CONFIG_FILE="$DXVK_CONFIG_FILE"
export __GL_SYNC_TO_VBLANK=0
WINEPREFIX="$WINEPREFIX" winetricks -q d3dx9 d3dcompiler_47
export WINEDEBUG=+all
wine "$UBISOFT_CONNECT_PATH" &> "$HOME/wine_log.txt"
echo "Log généré : $HOME/wine_log.txt"
echo "Si des erreurs persistent, partagez le contenu de wine_log dans le fil de discussion du forum"
wine "$UBISOFT_CONNECT_PATH"
EOF
chmod +x "$LAUNCH_SCRIPT"
log "Script de démarrage créé à $LAUNCH_SCRIPT."

log "Étape 6/6 : Création de la commande start-ubisoft..."
if ! grep -q "alias start-ubisoft=" "$HOME/.bashrc"; then
    echo "alias start-ubisoft='$LAUNCH_SCRIPT'" >> "$HOME/.bashrc"
    source "$HOME/.bashrc"
    log "Alias start-ubisoft ajouté à .bashrc."
else
    log "Alias start-ubisoft déjà présent dans .bashrc."
fi

log "Configuration terminée ! Lancez Ubisoft Connect avec la commande start-ubisoft"
0