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

TUTO Quest Games Optimizer: optimize your games and your headset natively !

par

Having the ability to natively configure, one by one, your applications and games, making the most of the potential of your headset and thus improving the gaming experience and graphics, this is the solution we offer you.

Modifying the graphic performances of the Meta Quest via SideQuest, a chore...


If you've ever fiddled with SideQuest, you might have tried changing the settings on your Meta Quest one day. To do this, you must connect your headset to your computer or to your Android smartphone via the USB cable and / or authorize wireless debugging, then go to the "Device settings & tools" as in the screenshot below.

macrodroid sidequest tools

From this screen, it is possible to change the resolution of the textures (1) and to modify the performance of the central processor and the graphics processor (2), or the fixed foveal rendering (3). The result is an often sharper, more detailed image and/or smoother application

The following images show the texture resolution setting (512px vs 3072px) in the Walkabout Mini Golf game.

macrodroid walkabout 512macrodroid walkabout 3072

However, these operations require going back and forth on the computer or smartphone, and taking off your headset to make new settings from the SideQuest application, as soon as the headset restarts, or we want to modify another game.

Do without SideQuest by applying profiles automatically thanks to the Quest Games Optimizer !


The solution we offer is a tool, in the form of a macro (see our tutorial: programming and automating our VR headset using macros (FR)) which allows us to free ourselves from repetitive SideQuest manipulations, to keep the headset on our head and to store in memory a specific setting for each game that we want to modify. It then becomes possible to juggle our favorite games, set as we want.

2021 12 21 19 51 48 logo 2 copy.png ?  Photos

And concretely, how is it going? Well, when a game that we want to set up launches, its custom profile (entered by hand or predefined by us) is automatically applied and a notification appears, indicating the success of the operation.

Keep in mind, however, that this does not improve the performances or the sharpness of PC VR games. Indeed, it is the graphics card of the computer that works to generate the images and send them as they are to the Meta Quest, which simply acts as a screen.

Possible settings


We configure the graphic performance profiles by games in a variable acting as a configuration file.

The profile setting contains the following parameters. They are optional and if you leave them blank, the default values will be applied.

  • TS (Texture Size): changes the rendering quality of textures for each eye. It is a kind of supersampling.

    Below is the default resolution (per eye) and native resolution of Meta Quest 1 & 2.
    Per eye (px) Quest 1 Quest 2
    Default 1216x1344 1440x1584
    Native 1440x1600 1832x1920

    The screen resolution is much higher than the default Quest resolution. This is why we are tempted to fully exploit, or even exceed the native resolution to obtain better display fineness. In the case of Quest 2, you will notice that the default resolution is equal to the native resolution of Quest 1. This is why a lot of content appears blurry to us.

    Here is the size of the textures available by default. These are the ones listed in the SideQuest application. These are the resolutions for each eye.
    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

    Since version 2.0.0 of the Quest Games Optimizer, we can set an "exotic" texture resolution, at 2000px for example, instead of the values listed above.

    Be careful, just like on a computer, playing on oversampling induces a much greater need for resources. As a result, it becomes necessary to increase the overall performance of the headset in order to maintain a satisfactory frame rate and thus avoid lags.

  • PERF: defines the performance level of the CPU and GPU.

    * By default, the headset dynamically manages its performances.
    Value Description
    0 Power Save
    1 Low
    2 Medium
    3 High
    4 Very High (and hot)

  • FFR (Fixed Foveated Rendering): Defines how the image is rendered at the outer edges. It is possible to keep the image sharpness in the center of the lens while degrading the image around the periphery. The result is a performance gain because the headset no longer calculates the entire image in high resolution. In principle, this artifice is almost imperceptible to our eyes, because the lenses by their convex design blur the image as our look moves away from the center of the image.

    technologie rendu foveal vr
    The higher the value, the blurrier the image is on the sides and the more relieved the graphics chip is.

    * By default, the helmet uses dynamic foveal rendering.
    Value Description
    0 Off
    1 Low
    2 Medium
    3 High
    4 Very High

     

  • Here is a configuration sample. Note that for the first profile, the FFR was not indicated. It will therefore be a dynamic FFR which will be used and managed by the headset. You can do the same with TS and PERF:

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

    Each game profile and application is separated by the character "|" and each parameter ends with "; ".

    It is possible to enter as many profiles as desired. However, think about enriching the trigger of the "Quest_Games_Optimizer" macro to add the games you want to optimize.

The screenshots below are taken from the games After the Fall (read our review (FR)) and Mission: ISS for which we have established graphic performance profiles. The difference in sharpness of the scenes is clearly visible between the "BEFORE" and "AFTER" images.

quest games optimizer v2 2

quest games optimizer v2 3

Be aware of what you are doing


Keep in mind that these manipulations are not trivial and can cause the headset to overheat, become unstable, drop in frame rate and decrease battery life. However, knowingly modifying these parameters can be beneficial in many situations and can bring real added value in video games in particular.

These manipulations need to be applied in the right way. If you increase the resolution of textures, for example, you will probably have to increase the performance of the CPU and GPU or play with the fixed foveal rendering.

Prerequisites and installation

WARNING: before embarking on the following manipulations, we would like to point out that we are not held responsible for any possible inconvenience that may arise on your device during its configuration. Also, you act with full knowledge of the facts.

To continue with this tutorial and operate the Quest Games Optimizer, your headset must be in developer mode.

Installation steps (to be done only once):

  • Install MacroDroid.
  • Install the ADB plug-in.
  • Activate the ADB plug-in.
  • Retrieve the macro "Quest_Games_Optimizer".
  • Automatic configuration of the macro according to the headset model and retrieval of cloud profiles.

Recurring actions:

  • Retrieving the latest cloud profiles.
  • Selection of games to optimize from the macro.
  • Manual configuration of games if necessary.
  • Activation of Wi-Fi debugging (on each hard restart of the headset).

The following video is an installation guide, but also serves as a demonstration of the capabilities of the Quest Games Optimizer. The installation of the two .apk (download at this address), the activation of the plug-in and the recovery of the "Quest_Games_Optimizer" macro from the MacroDroid application are to be done only once.

It's not visible in the video above, but when a profile is detected and applied, a notification pops up, synonymous with success.

Be careful, even if the possibilities of this tool seem miraculous to you, there is a catch. As long as Super User (root) rights are not available on the Meta Quest, we need each time the headset is physically restarted (the standby mode is not a problem, nor the extension of the screen), to enable Wi-Fi debugging from the SideQuest application, the Oculus Developper Hub or manual commands. This involves plugging the headset into our computer or our Android smartphone, each time the headset cold starts. This is a limitation of Android system that resets ADB debugging settings on every reboot. The same thing happens if you do your manipulations manually through the SideQuest application.

To learn more about MacroDroid, ADB and the purpose of the plugin, go to the "Glossary" section at the bottom of the tutorial.

Don't want to bother setting up your games yourself? Take advantage of the configurations already established by us!


We provide many graphic performance profiles already pre-established and tested by us. To retrieve our latest profiles, you just need to press the Power button twice (turn off then turn on the screen or standby mode). The Quest Games Optimizer will save them for you. If ever the configuration that we offer you does not please you, you can overwrite it by filling in your own configuration in the "appsPerformancesProfiles" variable.

We make sure that the profiles we offer you meet certain specifications:

  • Improved sharpness compared to the original game.
  • Maintaining the number of frames per second (fps) at the level of the frame rate of the headset defined for the game. We therefore try not to go below constant 72fps for a frequency of 72Hz in order to avoid lags as much as possible.
  • Moderate heating of the battery when possible.

The Quest Games Optimizer is not working, what to do ?


The notification does not appear:

  • Check that the application you want to configure is present in the macro's application trigger.
  • Check the spelling of the applications you have configured in the "appsPerformancesProfiles" variable.
  • Remember to separate the profiles with "|" and the parameters with ";".
  • Remember to check that the "do not disturb" option is disabled on your headset.
  • Please note, we regularly add new game profiles to our cloud database but many are still missing, so some games should be configured on your side as long as we have not saved them in our database.

If the graphics performance profile does not apply despite the presence of the notification of the applied profile, or you encounter an error:

  • Check that Wi-Fi debugging is still enabled. To do this, simply check in SideQuest if the connection lights are green and reactivate wireless debugging if necessary.

    macrodroid sidequest wifi check
  • Relaunch the ADB Shell [Tasker Plugin].
  • Accept USB debugging and RSA key again.
  • In some cases (quite rare), if the headset is busy for example, the macro could not be triggered in due time when launching a game. Also, the profile could not be applied correctly. You will be notified if the processing time exceeds a certain limit (it does not cover all cases) and you will be prompted to simply relaunch your game.

Update the macro

We are constantly improving the Quest Games Optimizer. At the time of this tutorial, the "Quest_Games_Optimizer" macro is in version v2.0.0, but you may receive a notification indicating the presence of a new update to download.

To update the macro, all you have to do is go to the "Macros" tab of the MacroDroid application and do a long press on the tile of the macro in question, then click on "Delete".

Be careful, after reinstalling the macro, you will have to reconfigure your applications trigger.

Release notes

2.0.0 [2021-12-29] (Quest_Games_Optimizer)

  • From now on there will be only one macro: "Quest_Games_Optimizer". It replaces the two existing ones ("OQ_APP" & "OQ_APP_Reset").
  • Automatic headset configuration.
  • Automatic creation of the "appsPerformancesProfiles" global variable.
  • Initialization of the "appsPerformancesProfiles" global variable with an example profile.
  • Possibility to define custom values for the size of the textures. No need to respect the default sizes (2048, 2560, etc.).
  • Possibility of obtaining profiles from an external source such as a personal FTP via the "appsPerformancesProfilesCustomUrl" global variable. Ex: http://myDomain/myProfilesFile.txt.
  • Separation of cloud profiles for Quest 1 and Quest 2.
  • Refresh cloud profiles by pressing the Power button twice (screen off then on or standby mode). It's no longer automatic.
  • Back in the home, the headset will use dynamic foveal rendering by default.
  • Back in the home, the headset will use a dynamic CPU and GPU level by default.
  • Debugging mode.
  • Minor fixes and code optimization.
  • NB: remember to remove or deactivate the old OQ_APP & OQ_APP_Reset macros.

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

  • Graphics performance profiles automatically downloaded from the cloud. The list is updated regularly.
  • The "appPerformancesProfiles" global variable is used to override the profiles coming from the cloud, if necessary.
  • Profile detection notification.
  • Profile application notification.
  • Notification in case of error.
  • Macros update notification.
  • More permissive configuration settings.

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

  • Removal of blanks at the start and end of configuration.

1.0.0 (OQ_APP & OQ_APP_Reset)

  • Macro initialization.

Thanks

We would particularly like to thank the following people:

  • Cédric Carvalho for his excellent work on the new logo for the app. He was able to meet our expectations and bring his personal touch. The result is a dynamic logo, a well-defined visual identity.
  • Nova Lacertae (invaluable ally of the gamergen/vr team) for its dedication as a finder of profiles that will soon allow you to play with a long list of preconfigured games.
  • Guilhem Esteve for his ideas brought to version v2.0.0 and his outside view as a developer.
  • And Samuel Hédouin (developer and writer at gamergen/vr) for getting out of his mind and developing this great tool that allows us today to optimize our Meta Quest.

Profiles we currently offer for the Meta Quest 2 (01/14/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 (read the review (FR))
  6. All-In-One Sports VR
  7. ALTDEUS: Beyond Chronos
  8. Anne Frank
  9. Arcsmith (read the review (FR))
  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 (read the review (FR)
  28. Disc Ninja (read the review (FR))
  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 (read the review (FR))
  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 (read the review (FR))
  82. Super Hot VR
  83. Swarm
  84. Sweet Surrender
  85. Synthriders
  86. Ragnarok (read the review (FR))
  87. Resident Evil 4 (read the review (FR))
  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 (read the review (FR))
  103. Yupitergrad
  104. Zooma


Let us know in the comments or on the networks if you find any new configurations or just if the ones we offer can be improved. We are counting on the community to grow this list.

Glossary

  • MacroDroid

Android application available for smartphones, allowing you to program your Android device in the form of macros and to perform tasks automatically according to numerous rules and conditions (read the full tutorial (FR)).

  • ADB

ADB is the basic tool for developers and all hackers who want to operate their Android device from a computer. It is part of the SDK (Android Software Development Kit). ADB stands for Android Debug Bridge. It is a bridge between the Android system and our computer, or more generally our Android device and another device. It allows developers (and others in the Android ecosystem) to communicate with their device through commands. Everything works on the client-server (or slave-master) model. adbd, the ADB daemon (background process) runs on the Android device and can receive commands from an ADB server, installed on a computer or other device, and thus execute them. In most cases, it is used through a USB connection. This is what happens when we plug the Meta Quest into our computer. The client (our headset), goes into debug mode and receives commands from the server (our computer and SideQuest), such as changing the resolution of textures via a Shell command.

  • Plug-in ADB Shell


The ADB Shell plug-in is an extension that is grafted onto the MacroDroid application.
It allows you to send ADB Shell commands to a remote Android device, either through a USB connection or over Wi-Fi. But it goes even further. It also allows the device to send commands to itself using the ADB protocol built into the Android system. But in order to do this, Wi-Fi debugging must be enabled.

Commenter 0 commentaire

Soyez le premier à commenter ce contenu !