UEVR - oneup03/VRto3D GitHub Wiki

UEVR is a VR mod for Unreal Engine 4 & 5 games

  • The main GitHub is located here
  • Support praydog's efforts on Patreon
  • Join the Flat2VR Discord to stay up to date on UEVR and new games

General Notes and References

  • A list of compatible Unreal Engine games and profiles is available either on the website or on Discord
  • You may get improved performance with GPU Scheduling OFF - you can change it here
  • Controls not working is likely due to either the 2D Game window not being in focus, or the in-game UEVR menu needs to be dismissed with INSERT
  • The order that you launch SteamVR, Game, UEVR doesn't matter. UEVR will auto-launch SteamVR if it's not open when you Inject
  • If you are running in a half-SbS or half-TaB format, you can boost your performance by setting VRto3D's render_width & render_height to match the half resolution
  • New DLSS Transformer Model looks good and generally works with UEVR. Use these steps to enable it for games

UEVR Video Guide

  • This video guide is a great orientation to UEVR, but it is aimed at VR users
  • Here's a brief video demonstration of running with VRto3D and Hogwarts Legacy
  • Specifics of using UEVR with VRto3D will be outlined on this wiki

Initial Setup Step-by-Step Guide

  • This is the set of steps to run a game in 3D. Detailed instructions are linked to sections below
  • Update your VRto3D profiles to see if one has been created for your game
  • Launch your game and modify the in-game settings
  • If UEVR isn't installed, install UEVR
  • Launch your UEVRInjector.exe shortcut and grant it admin
  1. Select your game from the drop-down menu
  2. Choose OpenVR or OpenXR (recommended) mode
  3. Either import a profile with Import Config or modify the highlighted settings
  4. Inject into the game
  • Screenshot 2024-11-01 153739
  • For single-display setups, enable VRto3D foregrounding with Ctrl + F8 and Alt + Tab to the 2D game window for controls
  • For multi-display setups, ensure that the 3D Headset Window is fullscreen by clicking on it and then click on the 2D game window for controls
  • Modify UEVR in-game settings
  • Adjust Depth and Convergence
  • Exit the game

Steps to Run a Configured Game

  • Launch your game
  • Wait for the game to reach its main menu
  • Launch your UEVRInjector.exe shortcut and grant it admin
    • Select your game from the drop-down menu
    • Choose OpenVR or OpenXR (recommended) mode
    • Inject into the game
  • SteamVR should start
  • For single-display setups, enable VRto3D foregrounding with Ctrl + F8 and Alt + Tab to the 2D game window for controls
  • For multi-display setups, ensure that the 3D Headset Window is fullscreen by clicking on it and then click on the 2D game window for controls

Detailed Steps

VRto3D Profiles

  • A limited number of profiles are available on the Github repo. If you would like to contribute one, reach out!
  • Instructions for creating a profile are covered in the README under User Presets and Profile Creation Steps here
  • Extract the latest profiles into your Documents\My Games\vrto3d\ folder
  • Profiles load automatically when UEVR injects
  • A loud beep indicates a profile was successfully loaded

In-Game Settings

  • These are general recommendations (sometimes requirements) for in-game settings
  • In-Game resolution affects UI resolution in VR, but not geometry resolution
  • Geometry resolution is set through the VRto3D config render_width and render_height
    • If you are running in a half-SbS or half-TaB format, you can boost your performance by setting these to match the half resolution
  • Windowed Mode (or borderless) to avoid issues with the 3D Headset Window and controls working
  • If using a multi-display setup for VRto3D, set the game to run on your 2D display in-game if it's available
  • DLSS Transformer Model is recommended all the way down to 50% or Performance render resolution. It works with UEVR using the settings covered in UEVR Per-Game Settings
  • Recommended to disable Motion Blur, Depth of Field, Chromatic Aberration/Lens Effect, Film Grain
  • Disable HDR as SteamVR is not compatible currently. AutoHDR may or may not work
  • Ray Tracing may work if you have the hardware to run it
  • Frame Generation MUST BE OFF
  • You can experiment with the different upscaling technologies to see which works best for a given game. They are all compatible but maybe only one has no broken effects in a specific game. (XeSS, DLSS, FSR, TSR, etc)

UEVR Initial Setup

  • Download the latest nightly
  • Extract the zip into a new folder of your choosing
  • Right Click UEVRInjector.exe and select Properties
    • Can also do this with a shortcut on your desktop
  • Under the Compatibility tab, select Run this program as an administrator and click OK
  • Turn OFF GPU Scheduling

UEVR Per-Game Initial Setup

  • DO NOT RENAME THESE PROFILE ZIPS OR UEVR WILL NOT WORK
  • A few profiles are available for VRto3D users here
  • Profiles can also be downloaded from the UEVR website
    • These may have VR specific settings, so you may need to tweak them or just create your own (read on)
  • You can also search for recommended settings on Discord
  • UEVR has a built-in function to manage profiles using Export Config and Import Config which will accept the zipped profiles you download
  • The Open Global Dir opens your C:\Users\<user>\AppData\Roaming\UnrealVRMod folder where all UEVR profiles are stored
    • If you run into some issue with a game crashing, you can try deleting its folder from here
  • If you want or need to manually create a profile for a game, the essential settings to change in UEVR are:
    • VR_GhostingFix to correct TAA when running in Synced Sequential Mode but it may cause some games to crash
    • VR_RenderingMethod where
      • Native Stereo will give the best performance but may introduce artifacts or crash the game
      • Synced Sequential should fix artifacts and is more compatible in general
    • VR_NativeStereoFix May get more games working in a native render mode
    • VR_NativeStereoFixSamePass Should be used with the native fix
    • VR_SyncedSequentialMethod should generally just be set to Skip Draw
  • Additional Unreal Engine CVars can be set in a user_script.txt stored in your game's profile folder, but these settings can be very game-specific and won't be covered here

UEVR In-Game

  • UEVR menu can be toggled using INSERT
    • If the UEVR menu is open, you probably will not be able to control the game, so close it when done tweaking settings
    • If you get a warning about DLSS Frame Generation just make sure you have it off in-game settings. UEVR can't tell the difference between DLSS and DLSS Frame Gen
  • The Reinitialize Runtime button is here for when you are adjusting convergence
  • The main settings you may want to modify are UI Distance, UI Size to push the in-game HUD to depth
    • You can hold Ctrl and click on sliders to type in values and then hit Enter
  • If you don't want anything to render in your 2D game window, uncheck Desktop Spectator View
  • This is what the main window looks like in OpenVR
  • image
  • This is what the main window looks like in OpenXR. The additional Resolution Scale can be used to dial in performance without breaking effects like in-game scaling options sometimes do
  • image
  • These are the rendering settings you can modify in-game
  • World Scale can affect the strength of the 3D effect, but you may want to use the VRto3D depth(separation) & convergence settings first
  • image
  • May want to check the Remember Menu Open/Closed State so that the UEVR menu stays closed on future game launches
  • You may want to uncheck the L3 + R3 options to avoid accidentally opening this menu with a controller
  • image

Adjusting Depth and Convergence

  • UEVR has a built-in World Scale option that affects depth and convergence as well as the below VRto3D settings
  • UEVR can inject using OpenVR or OpenXR. Both are compatible with VRto3D, but there's some different behaviors
  • In both, adjusting Depth (separation) Ctrl + F3/F4 works normally and you can reduce it for scenes where objects are closer to the camera
  • Create as many different Depth (separation) presets as desired. Reference VRto3D Profiles
  • It is recommended to use a SINGLE convergence value for every preset in a VRto3D profile to avoid issues and the performance hit stutter of changing convergence
  • If you want to adjust Convergence in both modes and then play in OpenXR mode, you will have to restart the game in-between
  • OpenVR
    • Adjusting Convergence Ctrl + F5/F6 works, but black bars will form on the edges of the screen
    • You will want to find a good default convergence setting using OpenVR to use for your VRto3D profile
    • Some games may crash when run via OpenVR with VRto3D
    • Once you have your desired VRto3D Convergence set, use the Reinitialize Runtime button in the UEVR GUI to apply it and get rid of black bars
    • Recommended to setup a user preset with your default depth and convergence to Numpad 1 for example
    • Save your settings with Ctrl + F7
  • OpenXR
    • Adjusting Convergence Ctrl + F5/F6 only affects UI elements
    • If you want multiple HUD/UI convergence settings, set your default convergence with OpenVR first
    • You can then create additional convergence presets in OpenXR
    • Restore your default depth and convergence using your user preset you created in OpenVR
    • Save your settings with Ctrl + F7
  • If the UI is squished or there's other render issues, try using the Reinitialize Runtime button in the UEVR GUI
  • Follow the User Presets and Profile Creation Steps in the README if you want to create a VRto3D profile for your depth and convergence settings
⚠️ **GitHub.com Fallback** ⚠️