[FYI] james.doverspike
Original CL Desc
-----------------------------------------------------------------
Cosmetic bulk asset streaming
Adds support for marking skeletal meshes and textures as optional files that stream from the cloud, typically used for cosmetics. Meshes and textures will now upload all of their non-inlined LODs as optional bulk files to the cloud, removing them from the pak files. The client will download into the VirtualFileCache in PersistentDownloadDir/VFC, which evicts least recently used LODs. These assets will have a longer delay to update to the higher quality LOD when their LODs are not in cache because they are now downloaded on-demand.
[CL 24373261 by james doverspike in ue5-main branch]
Adds support for marking skeletal meshes and textures as optional files that stream from the cloud, typically used for cosmetics. Meshes and textures will now upload all of their non-inlined LODs as optional bulk files to the cloud, removing them from the pak files. The client will download into the VirtualFileCache in PersistentDownloadDir/VFC, which evicts least recently used LODs. These assets will have a longer delay to update to the higher quality LOD when their LODs are not in cache because they are now downloaded on-demand.
[CL 24331735 by james doverspike in ue5-main branch]
[FYI] james.doverspike
Original CL Desc
-----------------------------------------------------------------
Cosmetic bulk asset streaming
Adds support for marking skeletal meshes and textures as optional files that stream from the cloud, typically used for cosmetics. Meshes and textures will now upload all of their non-inlined LODs as optional bulk files to the cloud, removing them from the pak files. The client will download into the VirtualFileCache in PersistentDownloadDir/VFC, which evicts least recently used LODs. These assets will have a longer delay to update to the higher quality LOD when their LODs are not in cache because they are now downloaded on-demand.
[CL 24253381 by bob tellez in ue5-main branch]
Adds support for marking skeletal meshes and textures as optional files that stream from the cloud, typically used for cosmetics. Meshes and textures will now upload all of their non-inlined LODs as optional bulk files to the cloud, removing them from the pak files. The client will download into the VirtualFileCache in PersistentDownloadDir/VFC, which evicts least recently used LODs. These assets will have a longer delay to update to the higher quality LOD when their LODs are not in cache because they are now downloaded on-demand.
[CL 24251508 by james doverspike in ue5-main branch]
ClearOldBlockTasks can BusyWait, which can call FAsyncIOCPUWorkTask::DoTask, which can try to take a FPakAsyncReadFileHandle's CriticalSection. FPakAsyncReadFileHandle's CriticalSection must be entered first when holding both CriticalSection and CachedFilesScopeLock to prevent deadlocks.
#rb Per.Larsson
#rnx
#preflight 63e144cdc2257e56f4ee08a3
[CL 24035541 by Matt Peters in ue5-main branch]
- Port some development only exec commands to Exec_Dev.
#rb none
#preflight 63c5c97f02024f93d822d678
[CL 23734254 by jeanmichel dignard in ue5-main branch]
Refactor Mount and Unmount to only acquire one lock at a time.
Mount was calling into FPakPlatformFile::GetPakSignatureFile() and acquiring PakSignatureFileCacheLock before calling CreateFileReader() which ends up acquiring PakListCritical in FPakPlatformFile::GetMountedPaks().
Unmount was acquiring PakListCritical first and then calling into FPakPlatformFile::RemoveCachedPakSignaturesFile() and acquiring PakSignatureFileCacheLock.
#rb carlmagnus.nordin
#rnx
#preflight 638713b84004f73f6219fda9
[CL 23325188 by pj kack in ue5-main branch]
#rb Josh.Adams
#preflight 6238d7c910251d53d5636a1b
#ROBOMERGE-AUTHOR: dave.belanger
#ROBOMERGE-SOURCE: CL 19465146 via CL 19465653 via CL 19466852 via CL 19475582 via CL 19475844
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v935-19464907)
[CL 19476451 by dave belanger in ue5-main branch]