Files
UnrealEngineUWP/Engine/Source/Developer/IoStoreUtilities
paul chipchase 303ba99f47 Added support for loading optional and duplicate non optional bulkdata from the IoDispatcher.
- Save the EIoChunkType for each bulkdata entry to the bulkdata manifest.
- Add ::DoesExist to both old and new bulkdata, this returns if the file containing the data actually exists or not, unlike ::CanLoadFromDisk which only returns if we can potentially load (it does not check if the data actually exists or not)
- Added EIoChunkType::OptionalBulkData to reference optional bulkdata
- Moved the code for adding bulkdata in IoStoreUtilities.cpp to it's own method that we can call for either .ubulk files or .uptnl files.
- Added a log error if we cannot find a valid  FPackageStoreBulkDataManifest::PackageDesc for a given file, as this indicates we have mismatched data, but do not fatally close the commandlet.
- The mipstreaming systems can now poll BulkData to see if the file exists (ie optional data) rather than storing a FString locally which allows us to abstract the knowledge of where the file ie (loose file vs IoDispatcher)
 - This will also reduce the memory costs as we will not be storing the filename in the FStreamingRenderAsset and the bulkdata.
 - Implemented for UTexture and UStaticMesh
 - Behaviour is controlled by STORE_OPTIONAL_DATA_FILENAME to allow the change to be easily reverted until we commit to it
- Duplicate non optional data can now work properly with FIoChunkId

#rb Per.Larsson

[CL 10468141 by paul chipchase in Dev-Core branch]
2019-11-27 09:36:16 -05:00
..