Current Development Requirements (UE 5.7)
Supported Device Hardware: PlayStation 5
Supported IDE: Visual Studio 2022
SDK Versions:
PS5 SDK: Prospero SDK 11.00.00.40
System Software: 11.00.00.43
Version History
5.7 | 11.00.00.40 | 11.00.00.43 | |
5.6 | 11.00.00.40 | 11.00.00.43 | |
5.5 | 10.00.00.40 | 10.01.00.00 | |
5.4 | 9.00.00.40 | 9.00.00.45 | |
5.3 | 7.00.00.38* | 7.40.00.06 | We recommend using the patched version in UE5Main that updates to SDK version 7.00.00.45, as this fixes some shader compiler issues. |
5.2 | 7.00.00.38 | 7.01.00.00 | |
5.1 | 5.00.00.33 | 6.00.00.42 | Supported IDE: Visual Studio 2022 |
5.0 | 4.00.00.31 | 4.50.00.05 and 4.51.00.01 | Supported IDE: Visual Studio 2019Supported Hardware: PlayStation 5 |
Release Notes
All Playstation
New:
Source code is now compiled with -fhonor-nans flag to resolve issues with undefined behavior on Clang 19.
Special characters '-', '.', '@' are preserved in names of save files. If the old behavior needs to be restored for compatibility reasons, the Sony.Save.AllowSpecialCharactersInNames variable can be set to 'false'.
OSS for PlayStation: Populate RegularPrice and RegularPriceText for displaying discounted offers.
Bug Fix:
SN-DBS
Fixed a bug where a multi-process cook could delete a non-temp directory.
Fixed issues when using clang-cl that caused the remote compilation to always fail and retry locally.
Shader compilation with SN-DBS no longer exceeds Windows path limits.
Fixed special controllers reporting incorrect controller names in OnInputDeviceConnectionChanged delegates.
Fixed support for the Ukrainian language.
PlayStation 5
New:
PSVR2 Hand Tracking sdk12 features:
Added a new setting to choose whether to never track controllers, only hands, to automatically change to hands when controllers are not tracked, or to track both hands and controllers simultaneously.
Added a new setting to have hand tracking use sdk10, 11, or 12 behavior.
Both of these settings require sdk12 to function.
Improved some setting names and tooltips.
Updated AgcRHI to use an LRU cache for samplers rather than allowing them to accumulate indefinitely over the lifetime of a program, with a CVar configurable limit (r.Agc.MaxSamplerStates, default 4096).
Added support for the C++20 Standard Library (also referred to as stdlib v2).
The engine defaults to using the old Standard Library (stdlib v1) because of known issues with prospero-ispc incorrectly tagging generated object files, which leads to linker warnings emitted for these files (they may be safely ignored and will be resolved by PS5 SDK 12).
Licensees may switch to Standard Library v2 by setting StandardLibVersion variable to 'v2' either in UEBuildPS5.cs or in BuildConfiguration.xml scripts. Projects are advised to try this option out to make sure they are prepared for Standard Library v1 getting removed from the PS5 SDK next year.
Added support for the optional libkernel_low_energy_mode library released by Sony, which backports the low-energy mode to PS5 SDKs older than 11. If the library is installed, the engine will have full support for the low-energy mode even when compiled against PS5 SDK 10.
Modified the save game system to use the new file save format as the old save format is deprecated as of PS5 SDK 12. The modifications to the save game system also provides a way to convert existing save data to the new format, if necessary.
ISPC executable shipping with Unreal Engine has been updated to version 1.25.3. The engine still uses ISPC available in the PS5 SDK by default.
-ffp-contract=off parameter is no longer passed to Clang during compilation as it conflicted with -ffast-math which is also set. This change brings PS5 in line with other platforms using Clang.
Changed tile mode selection for volume textures to always use kStandard4KB for 3D textures that aren't render targets unless TexCreate_3DTiling is provided.
Bug Fix:
Enabled caching for Asynchronous Package Reader requests to fix low IO bandwidth in specific cases, for instance when using builds with loose files.
Upgrade Notes
PlayStation 5
API Change:
For debugging purposes (development only), we've provided a way to save data in the old save format, via cvars, so that conversion can be tested.