Commit Graph

816 Commits

Author SHA1 Message Date
bob tellez
4d0b37e95b #UE4 Improve logging when assets fail to load. Failing to get the package linker will now produce fewer redundant log messages and all failure messages will include the asset that failed to load as well as the asset that was requesting the linker where possible.
#rb Robert.Manuszewski


#ROBOMERGE-SOURCE: CL 5713888 via CL 5714486

[CL 5714487 by bob tellez in Main branch]
2019-04-03 17:25:42 -04:00
bob tellez
0ae7f9c6dd Back out changelist 5533504. Crash at startup on forking linux servers. (Missing referencer information)
#ROBOMERGE-SOURCE: CL 5571078 via CL 5572105

[CL 5572109 by bob tellez in Main branch]
2019-03-26 20:30:52 -04:00
pj kack
5bde52e113 Copying task stream Dev-cook to Main
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]
2019-03-25 14:18:15 -04:00
marc audy
acee091a8b Rework sparse delegate storage to not use uobject annotation and manage its own map and lock state. This eliminates unnnecessary annotation cache overhead and ensures entire operation on map is completed while the lock is in place rather than copying per-object map out of the annotation and then moving modified inner per-object map back in to the annotation as two separately locked actions.
#rnx


#ROBOMERGE-SOURCE: CL 5483896 via CL 5483909 via CL 5483913 via CL 5487278

[CL 5487454 by marc audy in Main branch]
2019-03-20 18:47:33 -04:00
steve robb
185fddd5c3 Fix for warnings about engine classes being hot reloaded when they haven't even changed.
#jira UE-71581
#rb none
[FYI] jamie.dale
#lockdown cristina.riveron

#ROBOMERGE-SOURCE: CL 5459196 in //UE4/Release-4.22/...
#ROBOMERGE-BOT: RELEASE (Release-4.22 -> Main)

[CL 5459199 by steve robb in Main branch]
2019-03-19 15:56:12 -04:00
robert manuszewski
ced336ef57 Fixing issues with objects not being serialized before they are being ConditionallyPostLoaded by other objects and LoadContext related crashes
#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]
2019-03-14 17:10:18 -04:00
marc audy
c4199f8a71 Fix sparse multicast delegates operating on the wrong object when binding, removing, or clearing on an object from another object's blueprint.
#jira
#rnx


#ROBOMERGE-SOURCE: CL 5370086 via CL 5370286 via CL 5373422

[CL 5377685 by marc audy in Main branch]
2019-03-12 23:18:51 -04:00
jamie dale
9069eb815f Fixed containers failing to gather required instance overrides
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]
2019-03-12 16:19:05 -04:00
Richard TalbotWatkin
cf7faad17b Support for BulkData with 64-bit sizes. This is implemented via an additional BULKDATA flag, rather than with versioning, as BulkData is often loaded from unversioned archives, e.g. from DDC via FMemoryReader.
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]
2019-03-07 11:57:59 -05:00
marc audy
48b68e99e7 A second attempt at soothing Linux build errors
#jira UE-71127
#rnx


#ROBOMERGE-SOURCE: CL 5335697 via CL 5335698 via CL 5335818

[CL 5335829 by marc audy in Main branch]
2019-03-07 00:13:07 -05:00
jon nabozny
3bb3ce6b09 Fast TArray Delta Serialization
[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]
2019-03-06 22:35:27 -05:00
marc audy
cdffb29fff Attempt to fix linux CIS
#jira UE-71127
#rnx


#ROBOMERGE-SOURCE: CL 5334253 via CL 5334255 via CL 5335168

[CL 5335172 by marc audy in Main branch]
2019-03-06 21:40:27 -05:00
marc audy
1f0256be76 Override GetCPPType in the multicast delegate TProperty specialization as the new hierarchy was using the TProperty version instead of the UMulticastDelegateProperty version.
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]
2019-03-06 13:18:06 -05:00
marc audy
fe9e748718 Provide a comment at the check that will occur if a sparse delegate is used on the stack so user has better understanding of why it is checking.
#rnx
#jira


#ROBOMERGE-SOURCE: CL 5313147 via CL 5313158 via CL 5315966

[CL 5316033 by marc audy in Main branch]
2019-03-06 13:18:04 -05:00
marc audy
6eb7dba1ac Dynamic Multicast delegates can now specify that their storage be stored in a sparse allocation for delegates that are expected to be bound rarely. The memory usage of an unbound sparse delegate is 1 byte instead of 16 bytes (for the empty array), however, a bound sparse delegate will have access overhead to retrieve the invocation list from the sparse object annotation.
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]
2019-03-05 17:26:36 -05:00
dan oconnor
5e67234469 Revert to old behavior of using a vcall to get the ubergraphframe due to misuse of event graph by animblueprintcompiler
#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]
2019-02-27 19:22:56 -05:00
marc audy
64506a9ade Add DECLARE_CAST_BY_FLAG for all properties with cast flags that weren't already being declared.
#jira
#rnx
[FYI] Steve.Robb


#ROBOMERGE-SOURCE: CL 5205583 via CL 5205586 via CL 5205907

[CL 5229819 by marc audy in Main branch]
2019-02-27 16:24:09 -05:00
Josh Adams
d0bf843c9c - Merging Dev-Kairos/Engine/... to Main/Engine/...
- 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]
2019-02-27 11:57:17 -05:00
Robert Manuszewski
7a50c92d50 Fixing incremental build compile errors introduced in CL #5223889
#rb none
#jira UE-70640

[CL 5223925 by Robert Manuszewski in Main branch]
2019-02-27 00:35:34 -05:00
Robert Manuszewski
d5f0ff2c27 DuplicatedDataReader and DuplicatedDataWriter will now store UObject serialize context internally so that they don't crash in case of an error
#rb none
#jira UE-70144

[CL 5223889 by Robert Manuszewski in Main branch]
2019-02-27 00:18:15 -05:00
gil gribb
57d43aefcc UE4 - Moved mapped ubulk files to .m.ubulk so that they can be aligned and not compressed without affecting other bulk data such as textures.
#rb none


#ROBOMERGE-SOURCE: CL 5010556 via CL 5010559 via CL 5013445

[CL 5037908 by gil gribb in Main branch]
2019-02-18 12:10:33 -05:00
josh adams
165f5d1e45 iOS - Enabled animation memory mapped IO on IOS. Saves 10-20 megs of memory
#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]
2019-02-14 17:11:45 -05:00
jamie dale
c9e99b6eae Editor Utilities now respond to editor requests to cleanse object instances by clearing their references to any objects pending purge
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]
2019-02-13 17:03:46 -05:00
robert manuszewski
3dffb42b82 Fixing CIS
#rb none


#ROBOMERGE-SOURCE: CL 4981798 via CL 4981801 via CL 4982121

[CL 4984555 by robert manuszewski in Main branch]
2019-02-13 13:06:50 -05:00
robert manuszewski
4c526aa214 Reduced Linker annotations memory usage by introducing new annotation array type that can reclaim memory from object ranges that no longer require the annotation
#rb none


#ROBOMERGE-SOURCE: CL 4981648 via CL 4981653 via CL 4982090

[CL 4984532 by robert manuszewski in Main branch]
2019-02-13 13:06:39 -05:00