You can now manually increase the image resolution of Oculus Link, which can deliver a sharper, clearer image.
DISCLAIMER: this functionality is intended for advanced users. However, there should be no risk to your Quest or performance as you can simply set any changes back to default if something goes wrong.
Oculus Link is a new feature for Facebook’s Oculus Quest standalone headset which allows it to act as a PC VR headset via any high quality USB 3.0 cable. It’s currently in beta.
The default output resolution of Oculus Link is lower than when using a Rift S, which gives the image a less sharp, softer appearance. But the latest Rift software Public Test Channel (Facebook’s name for the Beta testing channel) build allows for advanced users to change the resolution, and Facebook Graphics Coder Volga Aksoy posted a guide as to how to do this.
To make sure you’re opted in to the Rift Public Test Channel, go to the Settings of the app and click on the Beta tab.
Oculus Debug Tool
To change the resolution of Oculus Link, you use the Oculus Debug Tool (ODT). This can be found in the oculus-diagnostics subfolder of the Support folder of your Oculus Rift software directory.
By default, this will be C:\Program Files\Oculus\Support\oculus-diagnostics.
The program is called OculusDebugTool.exe.
Pixel Density, Encode Resolution, Curvature
The three settings in the ODT which relate to Oculus Link are:
Pixels Per Display Pixel Override: This is a decimal which sets the actual render resolution of the VR app. 1.0 is the default. It is a per-axis value, so a value of 1.2 actually means 44% more pixels are rendered than default.
Distortion Curvature: While no description is given for this setting, it likely sets the curve at which resolution is reduced in the periphery. Counterintuitively, ‘Low’ gives better quality than ‘High’.
Encode Resolution Width: Oculus Link works by sending a compressed video stream across the USB connection. This setting decides the resolution of this video stream.
Pixels Per Display will always be set back to 1.0 when you restart your PC, however, Distortion Curve and Encode Width will persist.
The render width when Pixels Per Display is at default (1.0) is 1800. The default Encode Width is seemingly 2016. However, you can also revert them back to default by setting them to 0.
According to Aksoy, increasing the Encode Width without increasing the Pixels Per Display multiplier is generally pointless.
Aksoy gave three quality level recommendations based on which generation of graphics card you have:
NVIDIA GTX 970+ or Comparable
- Pixels Per Display Pixel Override: 1.0
- Distortion Curvature: Default
- Encode Resolution Width: 2016
NVIDIA GTX 1070+ or Comparable
- Pixels Per Display Pixel Override: 1.1
- Distortion Curvature: High
- Encode Resolution Width: 2352
NVIDIA RTX 2070+ or Comparable
- Pixels Per Display Pixel Override: 1.2
- Distortion Curvature: Low
- Encode Resolution Width:
UPDATE Feb 2020: As of the Oculus v13 update, increasing the Encode Resolution Width above 2784 will result in Oculus Link not working. This can be fixed by reducing it to 2784 or below.
Aksoy provided the following warnings for tweaking the settings too high:
• Higher “Pixel Density” can cause dropped VR app frames and will vary based on the performance characteristics of the VR app.
• Higher “Encoder Resolution” can lead to dropped compositor frames as well as visible tearing.
• Higher resolutions in general can also lead to higher latency.
• Unnecessarily high resolutions (especially “Encode Resolution”) can lead to aliasing artifacts (i.e. pixel crawling) on high frequency details.