- "Build" command of the PSO commandlet will split the cache, generating separate files for each chunk.
- Criterion is whether any shaders of the PSO can be used by the assets in that chunk (including after deduplication).
- Disabled by default because the runtime part to pick up those files isn't in yet.
#rb Allan.Bentham, Dmytro.Vovk
[REVIEW] [at]Allan.Bentham, [at]Pete.Sauerbrei, [at]Chris.Genova, [at]James.Doverspike, [at]Kenzo.TerElst, [at]Dmytro.Vovk
#preflight 62448dc2e434babd8ae73354
#ROBOMERGE-OWNER: arciel.rekman
#ROBOMERGE-AUTHOR: arciel.rekman
#ROBOMERGE-SOURCE: CL 19563493 via CL 19563649 via CL 19563674
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v937-19513599)
[CL 19565457 by arciel rekman in ue5-main branch]
#rb swarm
#tests Android Test Client
#preflight 62421a88dc6183e3f5d586f0
#ROBOMERGE-AUTHOR: thomas.ross
#ROBOMERGE-SOURCE: CL 19560832 via CL 19560842 via CL 19560855 via CL 19560869
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v937-19513599)
[CL 19563436 by thomas ross in ue5-main branch]
Config files are marked NoSave when plugin overrides them.
NoSave prevents issues with plugins leaving stale data around in config if turned off later.
#preflight 6238f556ec68595f3b7cac21
#rb dave.belanger
#ROBOMERGE-OWNER: rex.hill
#ROBOMERGE-AUTHOR: rex.hill
#ROBOMERGE-SOURCE: CL 19481929 via CL 19487176 via CL 19497560 via CL 19497573
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v936-19480137)
[CL 19498734 by rex hill in ue5-main branch]
*) 'Overview' shows skin cache on/off, recompute tangents on/off
*) 'Memory' shows skin cache memory consumption per sk mesh, includes RT if sk mesh uses a separate RT entry
*) 'RayTracingLODOffset` shows RT LOD index offset from raster LOD index
#jira UE-136542
#rb jeremy.moore
#preflight 622bb12b902b7ca699df8755
[CL 19383862 by Josie Yang in ue5-main branch]
This unifies a few Performance Mode settings together and now allows a project to restrict D3D12 to SM6 only.
#rb mihnea.balta, josh.adams
#preflight 622f83adc51b66df4c210b1e
#ROBOMERGE-AUTHOR: christopher.waters
#ROBOMERGE-SOURCE: CL 19376538 via CL 19376631
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v926-19321884)
[CL 19378054 by christopher waters in ue5-main branch]
Support Vulkan by default
Disable Vulkan on Adreno 5xx
#jira UE-142735
#rb Dmitriy.Dyomin
#preflight None
#ROBOMERGE-AUTHOR: jack.porter
#ROBOMERGE-SOURCE: CL 19243809 in //UE5/Release-5.0/... via CL 19248218
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v924-19243027)
[CL 19262878 by jack porter in ue5-main branch]
Not all functions have been modified to reduce scope, but the intent is to generally improve what is needed to support larger double range without touching some more complex functions at this time.
#jira UE-143457
#rb Andy.Davidson, Dave.Jones
#preflight 62187ab7783beeaf8af81231
#ROBOMERGE-AUTHOR: zak.middleton
#ROBOMERGE-SOURCE: CL 19159126 in //UE5/Release-5.0/... via CL 19159914
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v921-19075845)
[CL 19161657 by zak middleton in ue5-main branch]
- Added option 'DisableStreaming' in the World Partition convert commandlet to allow disabling streaming for converted maps.
- Added flag 'bEnableStreaming' for partitioned worlds that can be used to disable streaming but keep key features such as OFPA and Data Layers.
- In this mode, the streaming generation acts as standard level streaming and can be enabled at any time by the user.
- This mode is enabled by default for new partitioned maps created from the empty template or the open world template.
- The World Partition convert commandlet will now duplicate the default HLOD layers setup.
- Show a hint in the World Partition window that streaming is disabled.
- When disabling streaming from the UI, show a dialog to warn the user about the implications of the change.
- When enabling streaming for the first time, show a dialog to warn the user that the world is about to be set up for streaming.
- When saving a map, don't duplicate its HLOD setup unless it's a template map.
- Includes changes from MattK: `Allow external object details customizations to hide the root object node`.
- TODO: Convert all template maps from the Games project to use World Partiton with streaming disabled using the new 'DisableStreaming' commandlet option.
#rb patrick.enfedaque, richard.malo
#jira UE-143719
#preflight
#ROBOMERGE-AUTHOR: jeanfrancois.dube
#ROBOMERGE-SOURCE: CL 19149766 in //UE5/Release-5.0/... via CL 19150115
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v921-19075845)
[CL 19160979 by jeanfrancois dube in ue5-main branch]
Previously, vector types were using the single precision variants for their make&break functions. As a result, the split vectors would be floats, which led to precision loss. Going forward, we want to ensure that we use double precision variants of these functions. The single precision functions no longer serve any use, and will be deprecated.
Additionally, FVector_NetQuantize and friends can go back to using the default FVector make&break functions. We don't need to deprecate these functions since they only existed in 5.0. However, some content has already been saved with these functions, so we need to still setup redirects in BaseEngine.ini.
Finally, AssertMacros.h was missing several variants of GET_FUNCTION_NAME_CHECKED_NParams. Without these, GET_FUNCTION_NAME_CHECKED would fail to compile since KismetMathLibrary would have overloads of MakeVector and BreakVector.
#jira UE-141652
#preflight 6216b51e647bb7debf6dbf76
#rb phillip.kavan
#lockdown julien.marchand
#ROBOMERGE-AUTHOR: dave.jones2
#ROBOMERGE-SOURCE: CL 19122243 in //UE5/Release-5.0/... via CL 19123441
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v921-19075845)
[CL 19154373 by dave jones2 in ue5-main branch]
#rb PJ.Kack
#jira UE-133473
#preflight 620bf6ae483ff0ae5ec22257
### VirtualizationManager
- Added EPackageFilterMode that can be set via [Core.ContentVirtualization] in the config file to control the default virtualization behavior.
-- When set to EPackageFilterMode::OptOut(the default) all package paths will virtualize unless excluded by a pattern in UVirtualizationFilterSettings::ExcludePackagePaths.
-- When set to EPackageFilterMode::OptIn then no package path will virtualize unless included by a pattern in UVirtualizationFilterSettings::IncludePackagePaths.
- Added a TRACE_CPUPROFILER_EVENT_SCOPE to the constructor and ::MountBackends to better track the set up time costs.
- Change use of FConfigCacheIni::LoadLocalIniFile to use GConfig, there is no need to load our own.
- Improved verbose logging to show when a payload is rejected via filtering.
- We now early out if all payloads being requested in a push are rejected during validation.
- Renamed the FString overload for ::ShouldVirtualizePackage to ::ShouldVirtualize to make the difference clearer.
- Added support for UVirtualizationFilterSettings::ExcludePackagePaths when filtering
### UVirtualizationFilterSettings
- Now has a new FString array ExcludePackagePaths, which contains the paths/patterns used to force packages to be virtualized when filtering.
[CL 19010992 by paul chipchase in ue5-main branch]
- FileSystem, Http, Pak, S3 use the ValueWithLegacyFallback mode by default, which cause them to fall back to searching for uncompressed data if compressed data is not found.
- FileSystem has been fixed to store up to 1 MiB of compressed data inline with the value package rather than separately in content-addressable storage.
- Pak has been optimized to have GetChunks only load the required region of the requested value, rather than the whole value.
- Pak has been changed to stop storing data inline in the record package, since it will end up in the same file anyway when stored separately.
- Pak will upgrade the compressor and compression level when a compressed pak file is requested. Default cache compression uses Oodle Mermaid VeryFast and will upgrade to Oodle Kraken Optimal2.
- Zen does not have compression enabled by default, pending deployment of a new version that stores compressed values to Horde Storage.
- Added a missing request barrier when saving uncompressed data as compressed.
Example reduction in file system cache size when cooking for Windows:
- CitySample dropped from 66.5 GiB to 21.8 GiB.
- Lyra dropped from 2.54 GiB to 672 MiB.
- ShooterGame dropped from 1.21 GiB to 380 MiB.
Example reduction in compressed pak file cache size when cooking for Windows:
- CitySample dropped from 22.3 GiB to 18.5 GiB.
- Lyra dropped from 691 MiB to 543 MiB.
- ShooterGame dropped from 387 MiB to 313 MiB.
#jira UE-134381
#preflight 620a703f583261b0a658e043, 620a6fb2803d9066e6805310, 620a733117632e948459b6af
#lockdown Aurel.Cordonnier
#rb Zousar.Shaker
#ROBOMERGE-AUTHOR: devin.doucette
#ROBOMERGE-SOURCE: CL 18983671 in //UE5/Release-5.0/... via CL 18983890 via CL 18984096
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v917-18934589)
[CL 18984126 by devin doucette in ue5-main branch]
Backing out change due to cook breakage.
#preflight https://horde.devtools.epicgames.com/job/6206c2dfe24662ad5f77beed
#rb Robb.Surridge
#fyi Robb.Surridge
Original CL Desc
-----------------------------------------------------------------
Tutorials to plugin part 3: remove preset tutorial categories and move over existing content
#rb lauren.barnes
#jira 141830
#preflight 62068f21e24662ad5f7149ae
[CL 18959993 by eric mcdaniel in ue5-main branch]