Integrate all cook -iterate optimizations from //UE4/Dev-core/...
Test Scenario:
1) BuildCookStageAndRun with these arguments: -platform=Win64 -configuration=Development
2) CookIterate with these arguments: -run=Cook -CookCultures=en -TargetPlatform=WindowsClient -unversioned -stdout -unattended -iterate
Wall Time Results (as an average of running step 2) two times):
Before: ~09:40 (580 seconds) cook commandlet time
After: ~02:30 (150 seconds) cook commandlet time
=> 07:10 (430 seconds ) faster, i.e. a ~ 3.9x speedup
Win32 FileSystem Results:
Before: 1.5 million GetFileAttribute calls and 1.2 million FindNextFile calls
After: 35 0000 GetFileAttribute calls and 1.6 million FindNextFile calls
=> ~400 000 calls to FindNextFile replaces ~1.5 million calls to GetFileAttribute
#rb none
#ROBOMERGE-SOURCE: CL 5533504 via CL 5533655
[CL 5536177 by pj kack in Main branch]
#rb none
#jira UE-69177
#ROBOMERGE-SOURCE: CL 5401696 in //UE4/Release-4.22/...
#ROBOMERGE-BOT: RELEASE (Release-4.22 -> Main)
[CL 5401697 by robert manuszewski in Main branch]
If a container element is overridden on an instance, then the entire container is serialized into the instance with different keys than the archetype. This means that all elements of a container need to be gathered if any elements within the container have changed.
#jira UE-71447
#rb Francis.Hurteau
#rnx
#ROBOMERGE-SOURCE: CL 5371132 in //UE4/Release-4.22/...
#ROBOMERGE-BOT: RELEASE (Release-4.22 -> Main)
[CL 5371133 by jamie dale in Main branch]
This addresses the issue of enormous meshes >2Gb being unimportable (since source model data is stored as bulk data and loaded by the editor on demand).
This *won't* address the related problem that reading a large BulkData into a TArray is still not possible due to the 31-bit index limit on TArray.
#jira UE-58325
#rb Gil.Gribb
#ROBOMERGE-OWNER: Richard.TalbotWatkin
#ROBOMERGE-AUTHOR: richard.talbotwatkin
#ROBOMERGE-SOURCE: CL 5337393 in //UE4/Release-4.22/...
#ROBOMERGE-BOT: RELEASE (Release-4.22 -> Main)
[CL 5338028 by Richard TalbotWatkin in Main branch]
[REVIEW] [at]Brian.Bekich [at]Ryan.Gerleve [at]Mattias.Hornlund [at]Bart.Hawthorne [at]Peter.Engstrom [at]LouisPhilippe.Seguin
#rb Ryan.Gerleve
#ROBOMERGE-OWNER: jon.nabozny
#ROBOMERGE-AUTHOR: jon.nabozny
#ROBOMERGE-SOURCE: CL 5334271 via CL 5334273 via CL 5334274 via CL 5335302
[CL 5335303 by jon nabozny in Main branch]
This fixes nativization crash generating code for a multicast delegate.
#rb Phillip.Kavan
#rnx
#jira
#ROBOMERGE-SOURCE: CL 5313198 via CL 5313199 via CL 5315969
[CL 5316036 by marc audy in Main branch]
The definition of the delegate type must specify the class and property name of the delegate that will use it and the type cannot be used outside of that context or just on the stack.
UMulticastDelegateProperty is now abstract and has 2 subclasses (UMulticastDelegateInlineProperty and UMulticastDelegateSparseProperty). The SparseProperty SignatureFunction will be a USparseDelegateFunction.
The sparse delegates do not work correctly with the python bindings at this point, but this will be visited soon.
#rb Michael.Noland
#jira
#ROBOMERGE-SOURCE: CL 5295832 via CL 5306530
[CL 5306657 by marc audy in Main branch]
#rb Phillip.Kavan
#jira None
#ROBOMERGE-SOURCE: CL 5235482 in //UE4/Release-4.22/...
#ROBOMERGE-BOT: RELEASE (Release-4.22 -> Main)
[CL 5235483 by dan oconnor in Main branch]
- Brings over the necessary engine changes for embedding UE4 mobile as a dylib/so in native mobile app
- Various changes for facial animation, screen recording, others
- ARKit and ARCore plugins were removed, as deemed "not ready"
#rb many people
#ROBOMERGE-OWNER: josh.adams
#ROBOMERGE-AUTHOR: josh.adams
#ROBOMERGE-SOURCE: CL 5201138 via CL 5203024
[CL 5226277 by Josh Adams in Main branch]
#rb josh.adams
#ROBOMERGE-OWNER: josh.adams
#ROBOMERGE-AUTHOR: gil.gribb
#ROBOMERGE-SOURCE: CL 4993025 via CL 4993026 via CL 4995423
[CL 4999718 by josh adams in Main branch]
This fixes crashes where they would take references to things like an actor within a world, and then the active editor world was changed (which verifies against GC reference leaks).
#jira UE-69150
[FYI] Michael.Noland
#rb Lauren.Ridge
#ROBOMERGE-SOURCE: CL 4987801 in //UE4/Release-4.22/...
#ROBOMERGE-BOT: RELEASE (Release-4.22 -> Main)
[CL 4987804 by jamie dale in Main branch]