Anonymous edits have been disabled on the wiki. If you want to contribute please login or create an account.


Warning for game developers: PCGamingWiki staff members will only ever reach out to you using the official press@pcgamingwiki.com mail address.
Be aware of scammers claiming to be representatives or affiliates of PCGamingWiki who promise a PCGW page for a game key.

Engine:Unreal Engine 5

From PCGamingWiki, the wiki about fixing PC games
Unreal Engine 5
Unreal Engine logo.svg
Developers
Website
First release date
Predecessor

Key points

Most information and methods from the Unreal Engine 4 page are still mostly compatible with Unreal Engine 5.

Video

High dynamic range (HDR)

For a list of known games and their specifics, see Unreal Engine 4-5 games where HDR can be forced.

Unreal Engine 4 has had native HDR output support since version 4.14 and it can be forced in many games that don't officially support it with mixed results. Until 5.1, HDR in DirectX 12 was broken out of the box,[citation needed] requiring the use of -dx11 launch argument to run games in DirectX 11[Note 1].
Depending on the version of the engine or the way it renders UI, the UI might use the wrong gamma and look washed out. Additionally, some color correction features of the SDR tonemapper are skipped in HDR, like parts of the filmic grading (which isn't necessary, nor generally wanted in HDR) and color correction LUTs.

Some games don't acknowledge user config changes, for these it's sometimes possible to force HDR by runtime memory editing.

Force the built-in HDR display output of the engine:
  1. Refer to the list of Unreal Engine 4-5 games where HDR can be forced for details about whether the built-in HDR display output is known to work with the game.
  2. Using the guide below, modify Engine.ini or GameUserSettings.ini to include the following lines or enforce the variables via UE4SS:
    [SystemSettings]
    r.AllowHDR=1
    r.HDR.EnableHDROutput=1
    r.HDR.Display.OutputDevice=5
    r.HDR.Display.ColorGamut=2
    

    Recommended changes (optional):

    • If the display supports 2000 nits or higher, change r.HDR.Display.OutputDevice to 6 to use the 2000 nits output mode.
    • Add these lines to boost the make the UI blend in closely as how it did in SDR, and boost its brightness (this also allows HDR to work properly in DX12 in UE 5.0, otherwise the UI would draw with the wrong gamma) (note that on UE 5.0, the UI could be broken regardless of the settings in HDR):
    r.HDR.UI.CompositeMode=1
    r.HDR.UI.Level=1.5
    
  3. If DirectX 11 must be forced for HDR output to work (e.g. UE 5.0), launch the game using the -dx11 command line argument.[Note 1]
  4. The game should now launch with HDR display output enabled and working.

Notes

See the official engine documentation for more details.

Other information

Unreal Engine 4/5 Scripting System

UE4SS is a scripting system for UE4/UE5. Includes a console enabler script by default.
While UE4SS has a high compatibility with most UE titles, certain games may also have customized the engine enough for UE4SS to no longer be compatible. Titles not supported by UE4SS may have support added by the UE4SS community, searching the GitHub Issues page may help to find UE4SS configs for unsupported games.
Installation[1]
  1. Download the latest UE4SS release.
  2. Locate the main executable of the game (UE titles usually contain a launcher in the root folder and the main EXE in the <path-to-game>\Win64\Binaries folder).
  3. After locating the main executable, extract the full contents of the UE4SS archive there.
  4. Try to launch the game, if no fatal errors appear, UE4SS has been successfully installed.

Notes

If the game isn't supported it may show a fatal error or crash dump message, as mentioned above it may be worth searching the GitHub Issues page to see if others encountered the same issue, and whether they found a solution.
The UE4SS wiki also has a guide to fixing compatibility issues, and the patternsleuth tool may also help with locating the functions UE4SS requires.

Enable developer console

The developer console allows real-time adjustments through various Unreal Engine 4 console variables, along with being able to run debug commands like ToggleDebugCamera that enables a flycam mode. Most games ship with the console disabled, although often retains code related to it that allows for its reactivation through third-party DLL injection.
Independent of custom game code - potential for reliability.
Enable console with a UE4SS script[1]
  1. Install UE4SS.
  2. The console is now available when pressing F10 (can be configured by editing Mods\ConsoleEnablerMod\Scripts\main.lua).

Permanent console variable (cvar) changes

Global list of all console variables available here.
Like most engines that use console variables, Unreal Engine 5 has a config file that the variables' values are read from at startup.
Unlike in most engines, the method it uses may not be obvious. Editing files such as Scalability.ini could result in entered values being ignored depending on the graphics settings.
Entering cvars into Engine.ini instead should ensure the value changes will take place.
Add cvar name/values to Engine.ini

Engine.ini will usually accept cvar name/value pairs inside it, but only if entered into a [SystemSettings] section.

  1. Open the Engine.ini file inside the games config folder in a text editor.
  2. If the file does not have a [SystemSettings] section, add one to the bottom.
  3. Inside that section, add any preferred cvar name/value pairs, with the name/value separated with an '=' character, eg: r.MaxAnisotropy=16. Comments can also be added to the file by starting them with a ';' character.
  4. Save the file.

Notes

Values set with this method should usually override any value set elsewhere, however, some games might store values inside savegames, which may override them when the save gets loaded - the only workaround for these kind of games is to set the value through the developer console after loading the save and expect that the modified value may be written into the save.
The game may rewrite this file when exiting, usually removing any empty lines and lines containing only comments - any custom cvars should still be saved, though the file can be set as "read-only" if this rewrite isn't desired.
Changes to the games config files should be made while it is not running. As previously mentioned, the game may overwrite the file when exiting.
Unreal Engine 5 uses a hierarchical configuration scheme (on top of the multiple configuration categories previously mentioned), meaning that there can be multiple versions of (e.g.) Engine.ini found in different places, some of which may be prefixed with 'Default', 'Base', or 'Windows'. In general, it is best to edit the config file in the user configuration directory, as this should take priority over all others and work even if the game ships with encrypted config files. The file is usually located in %LOCALAPPDATA%\<Game>\Saved\Config\.
Force console variables via a UE4SS script[1]
If the alternative methods to set cvars don't work due to the game overriding them after loading a savefile or setting them per-scene, you can try forcing them in runtime using UE4SS.
  1. Install UE4SS.
  2. Create a new folder in Mods with your mod's name.
  3. Inside that folder, create a Scripts folder.
  4. Inside Scripts, create a new file called main.lua.
  5. Use the sample file for reference on configuration. In the Init() function put values that only need to be initalized once. In the Loop() function put values that need to be initialized actively in the runtime.
  6. Once you're done editing the script to your needs, save the file.
  7. Edit mods.txt with the name of your mod folder at the bottom, i.e. ForceRT : 1.
  8. Save the file.

Modding tools

Customized versions of the Unreal Editor for creating custom maps and mods for select UE5 games can be found on the Epic Games Store.

Games

See the list of games that use Unreal Engine 5.


Notes

  1. 1.0 1.1 Running a game in D3D11 may not be officially supported and may experience additional unexpected issues unrelated to HDR.

References

  1. 1.0 1.1 1.2 Verified by User:Sandemc on 2024-03-11