Advanced Configuration - mbucchia/Quad-Views-Foveated GitHub Wiki

Instructions for advanced configuration

Before you start

The default configuration should be sufficient for most users. You probably do not need to modify the configuration file.

Read carefully the instructions below.

It is important to understand that the resolution settings in the configuration file are multipliers for the resolution configured through your platform, for example:

  • Meta Quest Pro: Oculus software or Oculus Tray Tool
  • Pimax Crystal/5K/8K: Pimax Client
  • Varjo Aero/VR-3/XR-3: Varjo Base
  • Vive Pro Eye: SteamVR
  • HP Reverb G2: OpenXR Tools for Windows Mixed Reality

Changing the settings in these tools will alter the final resolutions used by the application.

Get familiar with how quad views rendering works.

Locations

There are 2 configuration files that are loaded, in the following order:

  1. %ProgramFiles%\OpenXR-Quad-Views-Foveated\settings.cfg - This file is not meant to be modified by the user. It is overwritten when installing new versions of the software, and is meant to hold global configuration from the developer.

  2. %LocalAppData%\Quad-Views-Foveated\settings.cfg - This is the file you may edit to add your own settings. Note: You have to create this folder and the file yourself. Do not copy the file from 1), instead create a blank file and only add settings you want to change from the default configuration.

Syntax

Example configuration file:

# These settings are for all headsets and applications
smoothen_focus_view_edges=0.2
sharpen_focus_view=0.7

[Oculus]
# These settings are specific to Oculus devices.
peripheral_multiplier=0.4
focus_multiplier=1.1
horizontal_focus_section=0.5
vertical_focus_section=0.5

[app:DCS]
# The settings are specific to the app "DCS".
vertical_focus_offset=0.1

General notes

  • Decimal values may have as many digits of precision as you wish.
  • Sections with the syntax [<string>] are matched against the OpenXR runtime name. Use the log file (see Troubleshooting) and search for string Using OpenXR runtime: to find the name of your runtime. Only matching one word is sufficient, for example if your OpenXR runtime is "Varjo OpenXR Runtime 3.10.1" then using the section name [Varjo] is sufficient.
  • Sections with the syntax [app:<string>] are matched against the OpenXR application name. Use the log file (see Troubleshooting) and search for string Application: to find the name of your application. Only matching one word is sufficient, however being exhaustive can avoid conflicts in the future.
  • Sections with the syntax [exe:<string>] are matched against the application's executable name. Only matching one word is sufficient, however being exhaustive can avoid conflicts in the future.
  • If a section does not match against the runtime or application name, the section is ignored.
  • When the same setting is specified in several sections of the configuration file, the last value (nearest to the bottom of the file) is used. Use the log file (see Troubleshooting) to see the settings being parsed from the configuration files.

Settings common to both dynamic and fixed foveated modes

  • peripheral_multiplier and focus_multiplier are positive decimal values controlling the resolution of the peripheral and foveated regions. A value of 1.0 means full resolution. A value above 1.0 may be used for supersampling. Defaults are 0.5 for the peripheral region and 1.0 for the foveated region.
    • Note: the ratio of the resolution is not expressed in number of pixels, but rather as a ratio of the dimensions. For example, a multiplier of 2.0 with a resolution of 1000x500 will result in a resolution of 2000x1000 (each dimension multiplied by 2).
  • turbo_mode is a value 0 or 1, where 1 enables Turbo Mode, a signature feature from OpenXR Toolkit. Default is 1 for most headsets.
  • smoothen_focus_view_edges is a decimal value between 0 and 0.5 controlling the "thickness" of the transition from the foveated region to the peripheral region. A value of 0 means no transition. Default is 0.2.
  • sharpen_focus_view is a decimal value between 0.0 and 1.0 controlling the sharpening of the foveated region, where 0 is no sharpening and 1.0 is maximum sharpening. Default is 0.7.
  • unadvertise is a value 0 or 1, where 1 will disable quad views. This option is meant to be used within an [app:] or [exe:] section. Note that this option does not work with DCS World.

Settings specific to dynamic foveated rendering

  • horizontal_focus_section and vertical_focus_section are decimal values between 0.1 and 0.9 expressing the size of the foveated region, in fraction of the full FOV of the headset. A value of 0.1 means that the size of the foveated region will be 10% of the headset's FOV (very small). Default is 0.35 for both.
  • vertical_focus_offset is a decimal value between -0.5 and 0.5 controlling the vertical offset added to the eye tracker data. This can be used if you prefer the foveated region to be slightly higher or slightly lower than your gaze. Positive values move the foveated region up from your eye gaze. Default is 0.

Settings specific to fixed foveated rendering

  • horizontal_fixed_section and vertical_fixed_section are decimal values between 0.1 and 0.9 expressing the size of the fixed foveated region, in fraction of the full FOV of the headset. A value of 0.1 means that the size of the fixed foveated region will be 10% of the headset's FOV (very small). Default is 0.5 and 0.45 respectively.
  • vertical_fixed_offset is a decimal value between -0.5 and 0.5 controlling the vertical offset of the fixed foveated region. This can be used if you prefer the foveated region to be slightly higher or slightly lower. Positive values move the foveated region up. Default is 0.

Options for advanced debugging

  • debug_eye_gaze is a value either 0 or 1 to enable a visual indicator to follow your gaze. Useful to check the accuracy of your eye tracker!
  • debug_focus_view is a value either 0 or 1 to enable composition of the foveated region only. Useful to see how the horizontal_focus_section and vertical_focus_section settings affect the foveated rendering. Note that this option does not affect the rendering of the application, therefore compositing only the foveated region will not increase performance.
⚠️ **GitHub.com Fallback** ⚠️