Epic Games has announced it will be prioritizing a fix for stuttering in games when using DX12/Vulkan APIs with Unreal Engine 5.1. For one reason or another stuttered frames in PC gaming have long been an issue but it had been hoped that with the abandonment of multiple GPU setups like SLI/Crossfire that it would no longer be a thing. Unfortunately, that did not happen and many a PC enthusiast, regardless of how much money or configuring, went into their rig, has witnessed the annoying phenomenon.
The Unreal Engine has largely come to dominate the gamespace in recent years and as such more and more gamers have seen the issue in games that utilize Unreal Engine 4 or 5. It can stem from PSO (Pipeline State Object), a tool for caching data for shader compiling.
PSO caching works by first creating a list of all the needed Shaders that are required by the Materials that are used in your UE4 project. This list is then used to help speed up the compiling process of these Shaders when they are first encountered by your UE4 project. This, in turn, helps reduce any hitches your project might encounter when a Material requires a new Shader to be compiled. Below you will find an infographic that outlines how the PSO Caching system works in UE4.
Epic Games aims to fix stuttering issues by automating the PSO caching process in Unreal Engine 5.1. Sadly enough it doesn’t sound like the previous engines can be patched with the new fix but newer games that utilize the next engine could deliver a smoother gaming experience.
With the increasing emphasis in UE5 on DX12 and Vulkan, we’re focusing attention on solving the problem of runtime hitches caused by Pipeline State Object creation, which is inherent to those RHIs. The previous solution required a PSO pre-caching process, which could be burdensome for large projects, and still leave gaps in the cache leading to hitches.
Automated PSO Gathering replaces the manual work required to collect all possible PSO combinations for a project, while at the same time keeping the number of PSOs as small as possible.
Source: Epic Games (via OC3D)