Thanks to 2_young_2_die’s reddit post, there are now instructions for getting VRto3D running on Virtual Desktop! Head over to the reddit post if you need more support.
- UEVR – For injecting Unreal games into a VR-compatible view
- VRto3D – Acts as a virtual HMD and renders side-by-side 3D
- SteamVR – Required backend for VR integration
- Virtual Desktop Streamer (PC) + Virtual Desktop App (Quest 3) – To stream PC screen to Quest 3
- Meta Quest 3 – The actual headset
- Lossless Scaling (Steam) – For frame generation and upscaling
- Mouse + Keyboard – As input devices
Note: Until told otherwise, you don’t need to wear the Quest 3 or connect it to Virtual Desktop yet!
🛠️ One-Time Setup Instructions
- Install the following tools:
- UEVR (follow official instructions)
- VRto3D (follow official instructions)
- SteamVR
- Lossless Scaling (via Steam)
- Virtual Desktop Streamer (Windows PC)
- Virtual Desktop App (on your Quest 3)
-
Start SteamVR once to register VRto3D as a virtual HMD and then close it
-
Go to Documents\My Games\vrto3d
and edit the config:
- Set the
window_height
and window_width
to the desired resolution of your virtual 3D display
- A 16:9 resolution is recommended as that is what VRto3D profiles target
- Adjust the
render_height
and render_width
to your desired rendering resolution
render_width
can be window_width / 2
for more performance in some mods/games
-
Set SteamVR as your OpenXR runtime:
- Open SteamVR → Hamburger menu → Settings → OpenXR → Set SteamVR as OpenXR Runtime and then close it
- Force SteamVR to use the VRto3D driver by editing
Steam\config\steamvr.vrsettings
and under the steamvr : {
section, add this line: "forcedDriver" : "vrto3d",
- You will have to reverse/remove these settings if you want to play normal VR again
- Launch Virtual Desktop Streamer, crank all options to max (e.g., 120 MBit bitrate), but leave all VR streaming options alone—they don’t matter for this setup. We’re only using Virtual Desktop Mode, not actual VR.
🚀 Launching a Game (Every Time You Play)
-
Launch the UE game you want to play. (Make sure it’s UEVR-compatible.)
-
Wait until the first real game screen appears, then Alt+Tab out.
-
Run UEVR as Administrator:
- Select the game process.
- Inject using OpenVR or OpenXR:
- OpenVR: Allows dynamic adjustment of convergence/separation (Ctrl+F3/F4 and Ctrl+F5/F6).
- OpenXR: Only allows convergence but respects the game profile’s separation setting.
-
VRto3D should now launch a virtual HMD window with a side-by-side 3D view of the game. The actual game window remains open as well.
🧠 Now Put On the Headset
-
On your Quest 3, launch Virtual Desktop and connect to your PC.
-
Alt+Tab to the VRto3D window to bring it to the front.
-
Use the Quest 3 controller to point under the virtual desktop and open the VD menu.
-
Activate SBS mode in Virtual Desktop.
-
You should now see a floating 3D monitor in front of you!
-
Hit Ctrl+F8 to anchor the 3D view on top.
-
Alt+Tab to the game window to reactivate sound and controls.
-
Play your game! 🎉
- If you lose input (mouse clicks stop working, or keyboard acts weird), reloading the last checkpoint usually fixes it.
⚙️ UEVR Settings While In-Game
- Press Insert to open the UEVR menu.
- Resolution:
- Should match VRto3D’s config.
- OpenVR: Resolution can’t be changed in UEVR.
- OpenXR: Resolution can be changed.
- No need to go beyond 3840x1080 (1920x1080 per eye), since Quest 3’s native resolution is ~2064x2208 per eye and you’re only using part of the display (it’s a floating window, not full FOV).
📈 Using Lossless Scaling (Frame Generation & Upscaling)
- Works great for both frame generation and upscaling.
- You can activate it before or after connecting the Quest 3.
- Select the virtual HMD window (VRto3D) as the target.
- If your monitor is 60Hz and Quest 3 is 120Hz:
- Enable “Allow Tearing” in Lossless Scaling to reach higher framerates.
⚠️ Problem with anchoring: Pressing Ctrl+F8 to anchor the virtual HMD window (for mouse+keyboard use) breaks Lossless Scaling.
Lossless Scaling stops working because the VRto3D window loses focus when you Alt+Tab to the game.
🧪 Workaround:
- Connect a second monitor.
- Move the actual game window to the second monitor (use Shift + Win + ←/→).
- Now, Alt+Tab between the game and VRto3D window without either losing focus.
- Lossless Scaling should now stay active on the virtual HMD window!
Why use this?
- Reduced motion sickness
- Less GPU power is needed than full VR
- Better performance than VR