Improvements and fixes for dependency preloading
- Fix check when mutliple load requests reference a shared asset
- Added a package load flag to disable dependency preloading on that package
- Fix a crash when loading default materials by disabling preloading
- Added WIP code to cooker to sort maps in pak file.
Display level load times for persistent levels when using "stat levels"
[CL 2669089 by Graeme Thornton in Main branch]
- timelines
- "AddComponent" support
- class subobjects are stored in UClass::MiscObjects
- various fixed, FDefaultValueHelperContext
#codereview Nick.Whiting, Mike.Beach
[CL 2648953 by Maciej Mroz in Main branch]
//depot/UE4-Orion/...
to //depot/UE4/...
UE4 - rollup of many performance changes
* increased max threads for task graph and added a way to reduce task threads at runtime for testing the optimal number
* added a way to track excessive allocation at runtime without using the memory profiler: LogGameThreadMallocChurn.Enable
* ps4: fixed a few problems with the platform properties, IsRunningGame was returning false
* added inline storage for one delegate in multicast delegates
* fixed excessive allocation on the script stack traceback
* fixed excessive malloc calls throughout the animation system
* added stats throughout the animation system
* reworked parallel queue ticks
* fixed excessive malloc calls in cloth and physics animation systems
* fixed GHitchThresholdCVar
* minor improvements to abtest
* added ability to change thread affinities on the fly so they can be tuned
* cvars to control animrate optimization and spew the results: EnableAnimRateOptimization, SpewAnimRateOptimization, DrawAnimRateOptimization, ForceAnimRate
* optimized malloc calls in cascade and gpu particles
* optimized malloc calls in input system
* removed visual logging and ability log from consoles and fixed a few compile errors related to doing that
* optimized gameplaytags
* added a few cvars to cause stalls in various parts of the pipeline to identify critical paths and bottlenecks: CriticalPathStall.*
* added console command to toggle all known outstanding perf tweaks: Orion.SetupPerfCVars
[CL 2642061 by Gil Gribb in Main branch]
ArrayLibrary functions use ProcessContext also for the Array (not only for the actual context object, that would be always ArrayLibrary CDO)
#codereview Nick.Whiting, Mike.Beach
[CL 2641865 by Maciej Mroz in Main branch]
- Native Access Specifiers
- FEmitDefaultValueHelper fix/improvements
#codereview Robert.Manuszewski, Nick.Whiting
[CL 2640098 by Maciej Mroz in Main branch]
- CppBackend: A prototype of the navite code generating - to create default values in a struct.
- Added PPF_ExportCpp flag. Work In Progress.
#codereview Nick.Whiting
[CL 2638411 by Maciej Mroz in Main branch]
Added CPPF_BlueprintCppBackend flag.
#jira UE-19180 FReferenceFinder cannot find InterfaceClass reference in UInterfaceProperty object
#codereview Robert.Manuszewski
[CL 2633780 by Maciej Mroz in Main branch]
All changes regarding e-mail discussion titled "Asset registry shenanigans".
Changes:
1. Engine now actively is getting rid of short asset paths in FStringAssetReference during saving (for all packages) and loading (only for older packages).
2. Deprecated direct access to FStringAssetReference.AssetLongPathname and exposed it via ToString and SetPath -- SetPath is making sure the path is in correct format. If the path can't be found on disk, the path is cleared.
3. Also access to FStringAssetReference.AssetLongPathnam via Blueprints is guarded using custom Make node function that uses SetPath instead of simple assign.
4. StringAssetReferenceMap will now contain only paths to packages (not objects) and ini references
5. GetDependencies now has additional parameter that lets you chose if it should resolve ini references or not. It was left not as default to keep old behaviour.
[CL 2630589 by Jaroslaw Palczynski in Main branch]