Returnal is expected to arrive on PC after a listing appeared on the Steam Database. The listing is codenamed ‘Oregon’, contains user tags including ‘Online Co-op’, ‘Third-Person Shooter’, ‘Bullet Hell’, ‘Sci-fi’, and ‘Rogue-like’, and is, therefore, unmistakably for Housemarque’s successful PlayStation 5 bullet hell rogue-like.
The question that comes to mind is how Returnal will fare on PC in terms of performance? The game runs in Unreal Engine 4, and takes advantage of the PS5’s fast storage and IO components to deliver a seamless experience, with instant loading of areas as you progress through the labyrinths of the planet Atropos as the protagonist, Selene.
There are a few concerns regarding the game’s performance on the PC platform, specifically in relation to stuttering or large frame time spikes.
Half-baked DirectStorage API
DirectStorage is a technology that allows games to take full advantage of high-speed storage (such as NVMe SSDs) that can offer many gigabytes of data reads per second with minimum CPU overhead. Although standard ReadFile-based IO may overload a disc, the CPU cost grows non-linearly as the size of individual reads decreases. In order to decrease the install footprint, most developers prefer to save their game assets compressed on disc, with these assets being decompressed on the fly when load time approaches. As bandwidth grows, the CPU overhead of this becomes more costly.
The PS5 hardware solves these challenges by offloading some of the processing to dedicated hardware for IO management and decompression. Given that PS5 games like Ratchet & Clank: A Rift Apart and Returnal are developed to take advantage of these architecture’s features, it’s critical that Windows provides similar capabilities in order for these games to run on PC. However, that is currently not the case.
Despite the DirectStorage public SDK being available since March 14, 2022, it’s missing its most important feature i.e. GPU decompression. While Microsoft has stated that GPU decompression is next on its roadmap, there is currently no concrete information on availability.
Instant Loading
If Returnal is to release on PC with support for the existing DirectStorage SDK that lacks GPU decompression, it is likely to exhibit stuttering during instances of rapid fast loading of textures and other assets. There are two scenarios in the game where this is likely to occur.
Retural’s biomes are comprised of smaller arenas that are connected together to make up each level. When traversing between arenas, the game instantly loads in asset data for the arena ahead. Despite the dedicated hardware present in the PS5 for IO management and decompression, these instances tend to exhibit stutter. These streaming stutters are likely to be more impactful when running Returnal on PC, as GPU decompression is not available in the existing DirectStorage API.
The same goes for instant transitions to new areas via portals. These transitions run without issue on PS5, but the rapid decompression and loading of assets on PC is likely to translate to glaring stutters or large frame time spikes.
Unreal Engine Pipeline State Objects
An additional cause of stutter in a potential PC version of Returnal is Unreal Engine’s Pipeline State Objects (PSO). The FShaderPipelineCache replaces FShaderCache and includes PSO logging, serialization, and pre-compilation. Caching Pipeline State Objects and serializing the initializers to disc lowers hitches by allowing pre-compilation of these states the next time the game is started.
However, this doesn’t resolve stutters that would occur during your first playthrough. The first time every unique shader is compiled, it would result in large frame time spikes. Moreover, certain shaders have inter-dependencies, and, therefore, are compiled synchronously. This, once again, leads to micro-pauses or stuttering. Digital Foundry has discussed the issue extensively during their coverage of PC ports of Unreal Engine 4 games.
All in all, while fans of rogue-likes and bullet hell games on PC are undoubtedly excited by the prospects of a PC port of Returnal, we’d advise caution, especially if the game arrives before the DirectStorage API is updated with GPU decompression.