Skip to content
OneUp edited this page Dec 7, 2024 · 11 revisions

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
  • 3DVision Notes
    • 3DVision driver 452.06 seems to be compatible with all Unreal Engine games tested thus far, but some newer UE5 games may stop working at some point
    • Review the 3DVision steps which ARE NECESSARY for any UEVR game
    • It is normal to get this warning, but the game will likely play just fine
    • image
  • Missing UI in-game is caused when the VRto3D debug_enable is set to false and the Headset Window is not proper fullscreen. (leave this setting to true unless you are using 3DVision)
  • 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
  • For any 3D display that isn't 3DVision, 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

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
  • If using 3DVision, you will need to follow the steps outlined in the README for all UEVR games
  • 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. Mouse control is not possible
  • 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. Mouse control is supported
  • Modify UEVR in-game settings
  • Adjust Depth and Convergence
  • Exit the game

Steps to Run a Configured Game

  • If using 3DVision, you will need to follow the steps outlined in the README for all UEVR games
  • 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. Mouse control is not possible
  • 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. Mouse control is supported

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
  • TAA is recommended. 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
  • 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 either the latest release or nightly (nightly recommended)
  • 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_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
  • 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 (behaves similar to 3DVision convergence, but it's technically different)
  • 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