Tutoriel Réalité Virtuelle (VR)
quest games optimizer vignette

TUTO Quest Games Optimizer : optimisez vos jeux et votre Quest de façon native !

par

Avoir la possibilité de configurer nativement, une à une, ses applications et ses jeux, en tirant le meilleur parti du potentiel de son casque et ainsi améliorer l’expérience de jeu et les graphismes, c’est la solution que nous vous proposons.

Modifier les performances graphiques du Meta Quest via SideQuest, une corvée...


Si vous avez déjà manipulé SideQuest, vous avez peut-être un jour essayé de modifier les paramètres de votre Meta Quest. Pour ce faire, vous devez brancher votre casque à votre ordinateur (voir notre tutoriel) ou à votre smartphone Android (voir notre tutoriel) via le câble USB et/ou autoriser le débogage sans fil, puis vous rendre dans l'onglet « Device settings & tools » comme dans la capture ci-dessous.

macrodroid sidequest tools

Depuis cet écran, il est possible de changer la résolution des textures (1) et de modifier les performances du processeur central et du processeur graphique (2), ou encore le rendu fovéal fixe (3).

Le résultat est une image souvent plus nette et détaillée et/ou une application plus fluide

Les images suivantes montrent le paramétrage de la résolution des textures (512px vs 3072px) dans le jeu Walkabout Mini Golf.

macrodroid walkabout 512macrodroid walkabout 3072

Cependant, ces manipulations nécessitent des allers et retours sur l'ordinateur ou le smartphone, et de quitter son casque pour procéder aux nouveaux paramétrages depuis l'application SideQuest, dès lors que le casque redémarre, ou que nous souhaitons modifier un autre jeu.

Passez-vous de SideQuest en appliquant des profils automatiquement grâce au Quest Games Optimizer !


La solution que nous proposons est un outil, sous forme de macro (voir notre tutoriel : Programmer et automatiser notre casque VR à l'aide de macros) qui permet de nous affranchir des manipulations répétitives de SideQuest, de garder le casque sur la tête et de stocker en mémoire un paramétrage spécifique pour chaque jeu que nous souhaitons modifierIl devient alors possible de jongler entre nos jeux préférés, réglés aux petits oignons.

Et concrètement, comment cela se passe ? Eh bien, quand un jeu que nous souhaitons paramétrer se lance, son profil personnalisé (saisi à la main ou prédéfini par nos soins) est automatiquement appliqué et une notification apparaît, indiquant le succès de l'opération.

quest games optimizer vignette

Gardez cependant en tête que cette manipulation n’améliore pas les performances, ni la netteté des jeux PC VR. En effet, pour ces derniers, c’est la carte graphique de l’ordinateur qui travaille à la génération des images et les envoi telles quelles au Meta Quest, qui agit tout simplement comme un écran.

Paramétrages possibles


Nous paramétrons les profils de performance graphique par jeux dans une variable faisant office de fichier de configuration.

Le paramétrage des profils contient les paramètres suivants. Ils sont optionnels et si vous ne les renseignez pas, les valeurs par défaut seront appliquées.

  • TS (Texture Size) : change la qualité du rendu des textures pour chaque œil. Il s'agit en quelque sorte d'un suréchantillonnage (supersampling).

    Ci-dessous la résolution (par œil) par défaut et la résolution native des Meta Quest 1 & 2.
    Per eye (px) Quest 1 Quest 2
    Default 1216x1344 1440x1584
    Native 1440x1600 1832x1920

    La résolution de l'écran est bien supérieure à la résolution par défaut des Quest. C'est pourquoi, nous sommes tenté d'exploiter pleinement, voir outrepasser  la résolution native pour obtenir une meilleure finesse d'affichage. Dans le cas du Quest 2, vous remarquerez que la résolution par défaut est égale à la résolution native du Quest 1. C'est pourquoi, bon nombre de contenus nous apparaissent flous.

    Voici la taille des textures disponibles par défaut. Ce sont celles reprises dans l'application SideQuestIl s'agit des résolutions pour chaque œil.
    Default value Per eye (px)
    512 512 x 563
    768 768 x 845
    768 768 x 845
    1024 1024 x 1127
    1216 1216x1344
    1440 1440 x 1584
    1536 1536 x 1690
    2048 2048 x 2253
    2560 2560 x 2816
    3072 3072 x 3380

    Depuis la version 2.0.0 du Quest Games Optimizer, nous pouvons définir une résolution « exotique » de texture, à 2000px par exemple, au lieu des valeurs listées ci-dessus.

    Attention cependant, tout comme sur un ordinateur, jouer sur le suréchantillonage induit un besoin en ressources beaucoup plus conséquent. De ce fait, il devient nécessaire d'augmenter les performances générales du casque pour tenir une cadence d'image satisfaisante et ainsi éviter les lags.

  • PERF : définit le niveau de performance du CPU et du GPU.

    * Par défaut, le casque gère dynamiquement ses performances.
    Value Description
    0 Power Save
    1 Low
    2 Medium
    3 High
    4 Very High (and hot)

  • FFR (Fixed Foveated Rendering) : rendu fovéal fixe. Définit la façon dont l'image est rendue dans les bords extérieurs de l'image. Il est possible de garder la netteté de l'image au centre de la lentille tout en dégradant l'image sur le pourtour. En résulte un gain de performance car le casque ne calcule plus toute l'image en haute résolution. En principe, cet artifice est quasiment imperceptible pour nos yeux, car les lentilles de par leur conception convexe rendent l'image flou au fur et à mesure que notre regard s'éloigne du centre de l'image.

    technologie rendu foveal vr
    Plus la valeur est élevée, plus l'image est floue sur les côtés et plus la puce graphique est soulagée.

    * Par défaut, le casque utilise un rendu fovéal dynamique.
    Value Description
    0 Off
    1 Low
    2 Medium
    3 High
    4 Very High

     

  • Voici un exemple de configuration. Notez que pour le premier profil, le FFR n'a pas été indiqué. Ce sera donc un FFR dynamique qui sera utilisé et géré par le casque. Vous pouvez en faire de même avec TS et PERF :

    « MyGame1;TS:2048;PERF:2; | MyGame2;TS:3072;PERF:3;FFR:4;| »

    Chaque profil de jeu et application est séparé par le caractère « | » et chaque paramètre se termine par un « ; ».

    Il est possible de renseigner autant de profils que souhaité. Pensez néanmoins à enrichir le déclencheur de la macro « Quest_Games_Optimizer » pour ajouter les jeux que vous souhaitez optimiser.

Les captures ci-dessous sont tirées des jeux After The Fall (lire notre test) et Mission : ISS pour lesquels nous avons établi des profils de performances graphiques. La différence de netteté des scènes est clairement visible entre les images « AVANT » et « APRÈS ».

quest games optimizer v2 2

quest games optimizer v2 3

Soyez conscient de ce que vous faites

Gardez à l'esprit que ces manipulations ne sont pas anodines et peuvent entraîner la surchauffe du casque, son instabilité, une baisse de fréquence d'images et une baisse de l'autonomie de la batterie. Néanmoins, modifier ces paramètres en connaissance de cause peut s'avérer bénéfique dans de nombreuses situations et peut apporter une réelle plus-value dans les jeux vidéo notamment.

Ces manipulations nécessitent d'être appliquées de la bonne manière. Si vous augmentez par exemple la résolution des textures, il faudra surement augmenter les performances du CPU et du GPU ou jouer avec le rendu fovéal fixe.

Pré-requis et installation

AVERTISSEMENT : avant de vous lancer dans les manipulations suivantes, nous tenons à préciser que nous ne sommes pas tenus pour responsable des possibles désagréments qui pourraient survenir sur votre appareil lors de son paramétrage. Aussi, vous agissez en connaissance de cause.

Pour poursuivre le présent tutoriel et faire fonctionner le Quest Games Optimizer, il est nécessaire que votre casque soit en mode développeur.

Étapes d'installation (à faire une seule et unique fois) :

  • Installation de Macrodroid ;
  • Installation du plugin ADB ;
  • Activation du plugin ADB ;
  • Récupération de la macro « Quest_Games_Optimizer » ;
  • Configuration automatique de la macro en fonction du modèle de casque et récupération des profils Cloud ;
  • Acceptation de la clé RSA.


Actions récurrentes :

  • Récupération des derniers profils Cloud ;
  • Sélection des jeux à optimiser depuis la macro ;
  • Configuration manuelle des jeux si besoin ;
  • Activation du débogage Wi-Fi (à chaque redémarrage à froid du casque).

La vidéo suivante est un guide d'installation, mais fait aussi office de démonstration des capacités du Quest Games Optimizer. L'installation des .apk (téléchargement à cette adresse), l'activation du plugin et la récupération de la macro « Quest_Games_Optimizer » depuis l'application Macrodroid ne sont à faire qu'une seule et unique fois.

Ce n'est pas visible dans la vidéo ci-dessus, mais quand un profil est détecté et appliqué, une notification apparaît, synonime de succès.

Attention, même si les possibilités de cet outil vous semblent miraculeuses, il y a un hic. Tant que les droit Super Utilisateur (root) ne sont pas disponibles sur le Meta Quest (c’est par contre le cas sur l’Oculus Go), nous sommes dans l’obligation, à chaque redémarrage physique du casque (la mise en veille ne pose pas de souci, ni l'extension de l'écran), d’activer le débogage Wi-Fi depuis l’application SideQuest, l'Oculus Developper Hub ou des commandes manuelles. Ce qui implique de brancher le casque à notre ordinateur ou à notre smartphone Android, à chaque fois que le casque démarre à froid. C’est une limitation du système Android qui réinitialise les paramètres de débogage ADB à chaque redémarrage. La même chose se passe si vous faites vos manipulations manuellement via l'application SideQuest.

Pour en savoir plus sur Macrodroid, ADB et la finalité du plugin, rendez-vous dans la section « Lexique » en bas du tutoriel.

Vous ne voulez pas vous embêter à configurer vous-même vos jeux ? Profitez des configurations déjà établies par nos soins !

Nous mettons à disposition de nombreux profils de performances graphiques déjà pré-établis et testés par nos soins. Pour récupérer nos derniers profils, il vous suffit d'appuyer deux fois sur le bouton Power (éteindre puis allumer l'écran ou mode veille). Le Quest Games Optimizer les sauvegardera pour vous. Si jamais la configuration que nous vous proposons ne vous plait pas, rien ne vous empêche de l'écraser en remplissant vous même votre propre configuration dans la variable « appsPerformancesProfiles ».

Nous veillons à ce que les profils que nous vous proposons respectent un certain cahier des charges :

  • Amélioration de la netteté par rapport à celle du jeu d'origine ;
  • Maintien du nombre d'images par secondes (FPS) au niveau de la fréquence d'image du casque définie pour le jeu. Nous essayons donc de ne pas descendre sous les 72fps constant pour une fréquence de 72hz afin d'éviter au maximum les lags ;
  • Chauffe modérée de la batterie quand celà est possible.

Le Quest Games Optimizer ne fonctionne pas, que faire ?

La notification ne s'affiche pas :

  • Vérifiez que l'application que vous souhaitez paramétrer est présente dans le déclencheur d'applications de la macro ;
  • Vérifiez l'orthographe des applications que vous avez paramétré dans la variable « appsPerformancesProfiles » ;
  • Pensez à séparer les profils avec un « | » et les paramètres avec un « ; » ;
  • Pensez à vérifier que l'option « ne pas déranger » est désactivée sur votre casque ;
  • Attention, nous ajoutons régulièrement de nouveaux profils de jeux dans notre base de donnée Cloud mais beaucoup manquent encore à l'appel aussi certains jeux sont à configurer de votre côté tant que nous ne les avons pas enregistrés dans notre base de données.

Si le profil de performance graphique ne s'applique pas malgré la présence de la notification du profil appliqué, ou que vous rencontrez une erreur :

  • Vérifier que le débogage Wi-Fi est toujours activé. Pour cela, il suffit de vérifier dans SideQuest si le témoins de connexion est vert et réactiver au besoin le débogage sans fil ;

    macrodroid sidequest wifi check
  • Relancer le plugin ADB Shell [Tasker Plugin] ;
  • Acceptez de nouveau le débogage USB et la clé RSA ;
  • Dans certains cas (assez rares), si le casque est occupé par exemple, la macro pourrait ne pas se déclencher en temps et en heure au lancement d'un jeu. Aussi, le profil pourrait ne pas s'appliquer correctement. Une notification vous préviendra si le temps de traitement dépasse une certaine limite de temps (elle ne couvre pas tous les cas) et vous serez invité à tout simplement relancer votre jeu.

Mettre à jour la macro

Nous enrichissons en permanence le Quest Games Optimizer. A l'heure du présent tutoriel, la macro « Quest_Games_Optimizer » est en version v2.0.0, mais vous pourriez reçevoir une notification vous indiquant la présence d'une nouvelle mise à jour à télécharger.

Pour mettre à jour la macro, il suffit de se rendre dans l'onglet « Macros » de l'application Macrodroid et de faire un appui long sur la tuile de la macro visée, puis de cliquer sur « Effacer ».

Attention cependant, suite à la réinstallation de la macro , vous devrez re-paramétrer votre déclencheur d'applications.

Notes de mises à jour

2.0.0 [2021-12-29] (Quest_Games_Optimizer)

  • Dorénavant il n'y aura qu'une seule macro : « Quest_Games_Optimizer » . Elle remplace les deux existantes (« OQ_APP » & « OQ_APP_Reset ») ;
  • Configuration automatique du casque ;
  • Création automatique de la variable globale « appsPerformancesProfiles » ;
  • Initialisation de la variable globale « appsPerformancesProfiles » avec un exemple de profil ;
  • Possibilité de définir des valeurs customisées pour la taille des textures. Plus besoin de respecter les tailles par défaut (2048, 2560 etc...) ;
  • Possibilité d'obtenir des profils depuis une source externe comme un FTP perso via la variable globale « appsPerformancesProfilesCustomUrl ». Ex: http://myDomain/myProfilesFile.txt ;
  • Séparation des profils Cloud pour le Quest 1 et le Quest 2 ;
  • Rafraîchissement des profils Cloud en appuyant deux fois sur le bouton Power (écran éteint puis allumé ou mode veille). Ce n'est plus automatique ;
  • De retour dans le home, le casque utilisera par défaut un rendu fovéal dynamique ;
  • De retour dans le home, le casque utilisera par défaut un niveau de CPU et GPU dynamique ;
  • Mode débogage ;
  • Corrections mineures et optimisation du code ;
  • NB : pensez à supprimer ou désactiver les anciennes macros OQ_APP & OQ_APP_Reset.

1.1.0 [2021-11-28] (OQ_APP & OQ_APP_Reset)

  • Profils de performances graphiques téléchargés automatiquement depuis le cloud. La liste est mise à jour régulièrement ;
  • La variable globale « appPerformancesProfiles » permet de surcharger au besoin les profils provenant du cloud ;
  • Notification de détection du profil ;
  • Notification d'application du profil ;
  • Notification en cas d'erreur ;
  • Notification de mise à jour des macros ;
  • Paramétrage des configurations plus permissif.

1.0.1 [2021-11-16] (OQ_APP & OQ_APP_Reset)

  • Suppression des blancs en début et fin de configuration.

1.0.0 (OQ_APP & OQ_APP_Reset)

  • Initialisation de la macro.

Remerciements

Nous tenons tout particulièrement à remercier les personnes suivantes :

  • Cédric Carvalho pour son excellent travail sur le nouveau logo de l'application. Il a su répondre à nos attentes et apporter sa touche perso. En résulte un logo dynamique, une identité visuelle bien définie ;
  • Nova Lacertae (précieux alliée de la team gamergen/vr) pour son dévouement en tant que dénicheur de profils qui vous permettront bientôt de jouer avec une longue liste de jeux pré paramétrés ;
  • Guilhem Esteve pour ses idées apportées à la version v2.0.0 et son regard extérieur en tant que développeur ;
  • Et Samuel Hédouin (développeur et rédacteur chez gamergen/vr) pour avoir fait sortir de sa tête et développé ce formidable outil qui nous permet aujourd'hui d'optimiser nos Meta Quest.

Les profils que nous proposons actuellement pour le Meta Quest 2 (14/01/2022)

  1. 2MD: VR Football Unleashed
  2. Acron: Attack Of The Squirrels
  3. Angrys Birds VR: Isle Of Pigs
  4. Audio Trip
  5. After The Fall  (lire le test)
  6. All-In-One Sports VR
  7. ALTDEUS: Beyond Chronos
  8. Anne Frank
  9. Arcsmith (lire le test)
  10. Baba Yaga
  11. Bait !
  12. Beat Saber
  13. Blaston
  14. Bogo
  15. Bowman
  16. Cards & Tankards
  17. Carly And The Reaperman
  18. Clash Of Chefs
  19. Color Space
  20. Contractors
  21. Cook-Out
  22. Crashland
  23. Crisis VRigade 2
  24. Cubism
  25. Dance Central
  26. Deism
  27. Demeo (lire le test
  28. Disc Ninja (lire le test)
  29. Down The Rabbit Hole
  30. Drop Dead Dual Strike
  31. Dreadhalls
  32. Electronauts
  33. Elixir
  34. Falcon Age
  35. First Contact
  36. First Step
  37. Fruit Ninja VR
  38. Gloomy Eyes
  39. Gorilla Tag
  40. Gorn
  41. Guns'n'Stories: Bulletproof
  42. Home After War
  43. Hyper Dash
  44. I Expect You To Die
  45. I Expect You To Die 2
  46. Job Simulator
  47. Journey Of The Gods
  48. Keep Talking And Nobody Explodes
  49. Kingspray Graffiti
  50. Layers Of Fear VR
  51. Learn Languages VR By Mondly
  52. Loco Dojo Unleashed
  53. Lucky's Tale (lire le test)
  54. Luna
  55. Merry Snowballs
  56. Mission: ISS
  57. Moss
  58. Ocean Rift
  59. Onward
  60. Painting VR
  61. Paranormal Activity: The Lost Soul
  62. Physics Playground
  63. Please Dont Touch Anything
  64. Poker Star VR
  65. Population: One
  66. Puzzling Places
  67. Racket Fury
  68. Real VR Fishing
  69. Republique VR
  70. Robo Recall
  71. Sam and Max: This Time It's Virtual!
  72. Shadow Point
  73. Shooty Fruity
  74. Smash Drums
  75. Solaris
  76. Space Folk City
  77. Sports Scramble
  78. Squingle
  79. Star Chart
  80. Star Shaman
  81. Stride (lire le test)
  82. Super Hot VR
  83. Swarm
  84. Sweet Surrender
  85. Synthriders
  86. Ragnarok (lire le test)
  87. Resident Evil 4 (lire le test)
  88. Rez Infinite
  89. Richie's Plank Experience
  90. Tetris Effect
  91. The Curious Tale Of Stolen Pets
  92. The Room VR
  93. The Thrill Of The Fight
  94. The Under Presents
  95. Touring Karts
  96. Tribe XR | DJ in VR
  97. Until You Fall
  98. Vacation Simulator
  99. Walkabout Mini Golf
  100. Warplanes: WW1 Fighters
  101. Wolves
  102. Wraith: The Oblivion - Afterlife (lire le test)
  103. Yupitergrad
  104. Zooma


Faites nous savoir dans les commentaires ou sur les réseaux si vous trouvez de nouvelles configurations ou tout simplement si celles que nous proposons peuvent être améliorée. Nous comptons sur la communauté pour faire grandir cette liste.

Lexique

Macrodroid

Application Android disponible pour sur smartphone, permettant de programmer son appareil Android sous forme de macros et d'exécuter des tâches automatiquement suivant de nombreuses règles et conditions (lire le tutoriel complet).

ADB

ADB est l’outil de base des développeurs et de tous les bidouilleurs qui veulent manipuler leur appareil Android depuis un ordinateur. Il fait partie du SDK (Kit de développement logiciel d’Android). ADB est l’acronyme de Android Debug Bridge. C’est un pont entre le système Android et notre ordinateur, ou plus globalement notre appareil Android et un autre appareil. Il permet aux développeurs (et autres acteurs de l’écosystème Android), de communiquer avec leur appareil grâce à des commandes. Le tout fonctionne sur le modèle client-serveur (ou esclave-maître). adbdle deamon (processus en arrière-plan) d’ADB tourne sur l'appareil Android et peut recevoir des commandes depuis un serveur ADB, installé sur un ordinateur ou tout autre appareil, et ainsi les exécuter. Dans la plupart des cas, il est utilisé via une connexion USB. C'est ce qui se passe lorsque nous branchons le Meta Quest sur notre ordinateur. Le client (notre casque), passe en mode débogage et reçoit des commandes depuis le serveur (notre ordinateur et SideQuest), comme le changement de résolution des textures via une commande Shell.

Plugin ADB Shell

Le plugin ADB Shell est une extension qui vient se greffer sur l'application Macrodroid. Elle permet d’envoyer des commandes ADB Shell à un appareil Android distant, soit par une connexion USB, soit par le Wi-Fi. Mais il va encore plus loin. Il autorise aussi l’appareil à s’envoyer des commandes à lui-même en utilisant le protocole ADB intégré au système Android. Mais pour ce faire, le débogage Wi-Fi doit être activé.

Commenter 0 commentaire

Soyez le premier à commenter ce contenu !