Commit Graph

9685 Commits

Author SHA1 Message Date
jon nabozny
cdc65f654f Reland: Fixes motion blur lengths when using time dilation
#rb josie.yang
#lockdown michal.valient
#preflight 614a44526c96990001c47143

#ROBOMERGE-OWNER: jon.nabozny
#ROBOMERGE-AUTHOR: guillaume.abadie
#ROBOMERGE-SOURCE: CL 17606608 via CL 17962735 via CL 18364937 via CL 18364960
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)

[CL 18365023 by jon nabozny in ue5-release-engine-test branch]
2021-12-02 23:53:56 -05:00
jon nabozny
165588bed9 BakePose and BakePoseOverrides generate incorrect poses
- Added support for retargeting when using Bake Pose with MeshBoneReduction module
    - Small const fixes and tweaks to MeshBoneReduction module
    - Removed unused array from in Skel Mesh reduction plugin

#rb Jose.Villaroel
#lockdown Jeff.Farris
#preflight 614b191259380f0001a1a342

#ROBOMERGE-OWNER: jon.nabozny
#ROBOMERGE-AUTHOR: jurre.debaare
#ROBOMERGE-SOURCE: CL 17595160 via CL 17954595 via CL 18364767 via CL 18364793
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)

[CL 18364826 by jon nabozny in ue5-release-engine-test branch]
2021-12-02 23:42:41 -05:00
jon nabozny
9693ad4915 Undo //UE5/Private-Frosty/Engine/... changelist 17586431
#lockdown michal.valient
#preflight revert for build breakage

#ROBOMERGE-OWNER: jon.nabozny
#ROBOMERGE-AUTHOR: guillaume.abadie
#ROBOMERGE-SOURCE: CL 17587410 via CL 17948832 via CL 18364580 via CL 18364616
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)

[CL 18364712 by jon nabozny in ue5-release-engine-test branch]
2021-12-02 23:34:52 -05:00
jon nabozny
c418c40de0 Fixes motion blur lengths when using time dilation
#rb josie.yang
#lockdown michal.valient
#preflight 614a1e3259380f0001888d92

#ROBOMERGE-OWNER: jon.nabozny
#ROBOMERGE-AUTHOR: guillaume.abadie
#ROBOMERGE-SOURCE: CL 17586431 via CL 17948712 via CL 18364381 via CL 18364522
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)

[CL 18364604 by jon nabozny in ue5-release-engine-test branch]
2021-12-02 23:30:35 -05:00
sebastien lussier
de32e0fb24 Failure to checkout files during the HLOD generation process gives no context at all
#rb jeanfrancois.dube
#lockdown jeanfrancois.dube
#preflight 6143656e3c7c670001d2a328

#ROBOMERGE-AUTHOR: sebastien.lussier
#ROBOMERGE-SOURCE: CL 17540134 via CL 17944595 via CL 18363715 via CL 18363950
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)

[CL 18364043 by sebastien lussier in ue5-release-engine-test branch]
2021-12-02 23:08:24 -05:00
zach bethel
0fa5204b14 RDG insights refactor and transient heap visualizer.
#rb none
#preflight 6137b22ad9c85a0001393261

#ROBOMERGE-AUTHOR: zach.bethel
#ROBOMERGE-SOURCE: CL 17448310 via CL 17902804 via CL 18360635 via CL 18360786
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)

[CL 18360851 by zach bethel in ue5-release-engine-test branch]
2021-12-02 18:04:19 -05:00
jack cai
ea3df10c26 Control Rig: make sure pins are in a valid state before querying its default value
#jira UE-136522
#rb helge.mathee sara.schvartzman

#ROBOMERGE-AUTHOR: jack.cai
#ROBOMERGE-SOURCE: CL 18357055 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v895-18170469)
#ROBOMERGE[STARSHIP]: UE5-Release-Engine-Staging Release-5.0

[CL 18357118 by jack cai in ue5-release-engine-test branch]
2021-12-02 15:32:56 -05:00
yoan stamant
ce31754333 [GameplayDebugger] viewer can now provide view location and direction to the replicator so detaching camera from controller is supported properly for actor picking and culling tests
added view distance and angle to config and updated actor picking + culling
#rb maxime.mercier, mieszko.zielinski
#preflight 61a917f61a368fd603a10e4f

#ROBOMERGE-AUTHOR: yoan.stamant
#ROBOMERGE-SOURCE: CL 18355593 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v895-18170469)
#ROBOMERGE[STARSHIP]: UE5-Release-Engine-Staging Release-5.0

[CL 18355643 by yoan stamant in ue5-release-engine-test branch]
2021-12-02 14:38:50 -05:00
sara schvartzman
c2e8517589 Control Rig: Fix cannot add execute context to a function once it is removed
#jira UE-135600
#rb helge.mathee
#preflight 61a8c1afe8314ee7b594cb36

#ROBOMERGE-AUTHOR: sara.schvartzman
#ROBOMERGE-SOURCE: CL 18353073 in //UE5/Release-5.0/... via CL 18353095
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)
#ROBOMERGE[STARSHIP]: UE5-Main

[CL 18353121 by sara schvartzman in ue5-release-engine-test branch]
2021-12-02 11:44:22 -05:00
helge mathee
c1eff17803 SAdvancedTransformWidget: Add helper functions for numeric value getters / setters
#rb na
#jira UE-134546
#preflight https://horde.devtools.epicgames.com/job/61a8e85fca183f8de48d2fe3

#ROBOMERGE-AUTHOR: helge.mathee
#ROBOMERGE-SOURCE: CL 18353001 in //UE5/Release-5.0/... via CL 18353040
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)
#ROBOMERGE[STARSHIP]: UE5-Main

[CL 18353051 by helge mathee in ue5-release-engine-test branch]
2021-12-02 11:41:41 -05:00
paul chipchase
624a015519 Prevent invalid FPayloadIds (empty payloads) from being added to the package trailer.
#rb PJ.Kack
#jira UE-136374
#rnx
#preflight 61a8ad08ad6629a51eb1f8d8

- Having invalid payloads in the trailer's lookup table and writing empty payload data to disk was a waste of time and meant we had to add more error handling code elsewhere.
- Now when a VBD attempts to add one to the trailer it will be rejected, although the provided callback will still be invoked so that the VBD object will still mark itself as being serialized to disk and update it's flags etc.
- Asserts have been added when writing the FPackageTrailer to disk or creating a new FPackageTrailerBuilder from an existing FPackageTrailer if invalid FPayloadIds are somehow found. This is not an expected condition and the asserts are there to guard against future code changes that might break the contract.
- Now when virtualizing the package trailer during submission checks we can assume that all FPayloadIds reference actual data.

#ROBOMERGE-AUTHOR: paul.chipchase
#ROBOMERGE-SOURCE: CL 18351024 in //UE5/Release-5.0/... via CL 18351037
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)

[CL 18351039 by paul chipchase in ue5-release-engine-test branch]
2021-12-02 06:58:09 -05:00
helge mathee
95985c1125 Improve SAdvancedTransformInputBox
#rb none
#jira UE-134546
#preflight https://horde.devtools.epicgames.com/job/61a7a55b9b64d95afb994709

#ROBOMERGE-AUTHOR: helge.mathee
#ROBOMERGE-SOURCE: CL 18350927 in //UE5/Release-5.0/... via CL 18350942
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)
#ROBOMERGE[STARSHIP]: UE5-Main

[CL 18350948 by helge mathee in ue5-release-engine-test branch]
2021-12-02 06:40:43 -05:00
paul chipchase
f4e06ebd3a Clean up the code organization for virtualization backends
#rb Per.Larsson
#rnx
#preflight 61a8940b9c77d610079ce7da

- Made all backends final, they should not be derived from.
- Added header files for the remaining backends that were cpp only. The headers are in the modules private directory so will not be used elsewhere and it makes it easier to see the interface.

#ROBOMERGE-AUTHOR: paul.chipchase
#ROBOMERGE-SOURCE: CL 18350848 in //UE5/Release-5.0/... via CL 18350854
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)

[CL 18350856 by paul chipchase in ue5-release-engine-test branch]
2021-12-02 06:21:36 -05:00
paul chipchase
aa67184ea8 Cleaned up FVirtualizationManager to avoid duplicate code comments.
#rb trivial
#rnx
#preflight 61a88963800738dbfbb4983b

- Removed the code documentation for the methods overriden from IVirtualizationSystem as the interface is already documented.
- Set FVirtualizationManager as final since it will not be derived from.

#ROBOMERGE-AUTHOR: paul.chipchase
#ROBOMERGE-SOURCE: CL 18350562 in //UE5/Release-5.0/... via CL 18350564
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)

[CL 18350565 by paul chipchase in ue5-release-engine-test branch]
2021-12-02 04:41:46 -05:00
karl dubois
d1542bc1f3 [Backout] - CL18328294
- Part 2/2 of removing CL18339735 & CL18328294. These changes cause multiple unresponsive AIs.

Original CL Desc
-----------------------------------------------------------------
Add a InitNotifyFlags function to UBTAuxiliaryNode, UBTTaskNode, UBTCompositeNode  and UBTDecorator to setup the various flags that must be set when some functions are overriden.
Add macros to call those functions, this is necessary as those functions are protected.
Use those macros in various nodes (not all of them, this is not possible for some blueprint tasks)

#tests 100% repro in local cooked builds in Test targets.
[FYI] charles.lefebvre, Maxime.Mercier, Mieszko.Zielinski, nicolas.bonnelly, Guillaume.Guay
#rb guillaume.morreel, loic.devaux
#rnx

#ROBOMERGE-AUTHOR: karl.dubois
#ROBOMERGE-SOURCE: CL 18349522 via CL 18349525 via CL 18349530 via CL 18349715 via CL 18349725
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)

[CL 18350095 by karl dubois in ue5-release-engine-test branch]
2021-12-02 02:14:13 -05:00
paul chipchase
e38a952142 Submitting packages on projects with virtualization enabled is much faster when none of the payloads actually needs to be virtualized.
#rb PJ.Kack
#rnx
#preflight 61a795773c29b3cf13cd8250

### PackageSubmissionChecks
- Under the old model submitting a large number of packages could be very slow as each package would check each payload that it owns and is currently stored locally one at a time. For the source control backend this created quite a large overhead even when all of the payloads were already virtualized.
- Now we do a pass over the submitted files to find all valid packages that have package trailers with locally stored payloads, gather the payloads into a single list and then query that in one large batch.
- Once we find which payloads are not in permanent storage (note that in the case where a project is using multiple permanent storage solutions, if a payload is missing in one backend it counts as not being in permanent storage) we then attempt to virtualized them.
- Only after all of this is done will we create the truncated copy of each package and then append the updated trailer to each one. In theory doing it in this order this might slightly increase the change of submit failures that occur after virtualization that result in a package never being submitted and orphaned payloads being added to permanent storage, but this will always be a risk.
- Added an assert to fire if we detect a trailer with some virtualized and some local payloads. This should be a supported feature but needs proper testing first before we can allow it. With out current project settings no project should actually encounter this scenario.
- To make the code easier to follow we now early out of the entire check when errors are encountered.
- Added logging at various stages in the process to help show the user that something is happening and make problems easier to identify in the future.
- Notes
--  There is a lot of handling of invalid FPayloads. This is because it is currently possible to add empty payloads to the trailer which is inefficient and wastes space. The trailer will be modified to reject empty payloads in a future update at which point a lot of this handling can be removed.
-- This could've also been solved by not fully rehydrating a package on save by the end user, which will be added as a project setting in a future piece of work, but this approach will solve the edge case when the user does have a large amount of hydrated packages which contain payloads that are already virtualized so it was better to fix that now while we have good test cases for it.
-- We still have scaling problems with large number of package being submitted that do have payloads that need to be virtualized, this will be fixed by extending IVirtualizationSystem::Push to also accept batches of payloads in future work.
-- OnPrePackageSubmission could be broken up into smaller chunks to make the code easier to follow. This will be done after the batch payload submission work is done.

### VirtualizationSystem
- EStorageType has been promoted to enum class.
- Added a new enum FPayloadStatus to be used when querying if a payload exists in a backend storage system or not.
- Add a new method ::DoPayloadsExist which allows the caller to query if one or more payloads exists in the given backend storage system.

### VirtualizationManager
- Implemented ::DoPayloadsExist. First we get the results from each backend in the storage system (which return as true or false from each backend) then total how many backends found the payload in order to set the correct status.

### IVirtualizationBackend
- ::DoesPayloadExist which queries the existence of a single payload has been added to the interface. Most backends already implemented this for private use and if so have had their implementation renamed to match this.
- Also added ::DoPayloadsExist which takes a batch of FpayloadIdsto query. Some backends can deal with a batch of payload ids much more efficiently than one at a time, although the default implementation does call ::DoesPayloadExist for each requested payload.
-- The default implementation prevents every backend from needing to implement the same for loop but does allow backends that can gain from batching to override it.

### VirtualizationSourceControlBackend
- This backend does override ::DoPayloadsExist and implements it's own version as it tends to perform very poorly when not operating on larger batches.
- In this case ::DoesPayloadExist calls back to ::DoPayloadsExist to check each payload rather than implement as specific version.

### PackageTrailer
- The trailer can now be queries to request how many payloads of a given type it contains

#ROBOMERGE-AUTHOR: paul.chipchase
#ROBOMERGE-SOURCE: CL 18339847 in //UE5/Release-5.0/... via CL 18339852
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)

[CL 18339859 by paul chipchase in ue5-release-engine-test branch]
2021-12-01 11:13:31 -05:00
sara schvartzman
f48467a63e Control Rig: Fix errors on nodes don't disappear after undoing
#jira UE-135986
#rb helge.mathee
#preflight 61a60d0947752856c918153d

#ROBOMERGE-AUTHOR: sara.schvartzman
#ROBOMERGE-SOURCE: CL 18338597 in //UE5/Release-5.0/... via CL 18338636
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)
#ROBOMERGE[STARSHIP]: UE5-Main

[CL 18338677 by sara schvartzman in ue5-release-engine-test branch]
2021-12-01 09:36:35 -05:00
jack cai
4a980ee248 ControlRig: make sure duplicated temp assets used for editor validation cannot dirty the original assets
#jira UE-135745
#rb helge.mathee

#ROBOMERGE-AUTHOR: jack.cai
#ROBOMERGE-SOURCE: CL 18337534 in //UE5/Release-5.0/... via CL 18337541
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)

[CL 18337549 by jack cai in ue5-release-engine-test branch]
2021-12-01 06:29:29 -05:00
martins mozeiko
31a8981328 Update SymsLib to latest version and update SymsResolver for Insights.
Now it can resolve stripped pdb symbols, for example, which comes from Microsoft Symbol Server.
Insights will additionally use _NT_SYMBOL_PATH environment variable to lookup pdb files.

#rb Johan.Berg

#ROBOMERGE-AUTHOR: martins.mozeiko
#ROBOMERGE-SOURCE: CL 18330470 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v895-18170469)
#ROBOMERGE[STARSHIP]: UE5-Release-Engine-Staging Release-5.0

[CL 18330565 by martins mozeiko in ue5-release-engine-test branch]
2021-11-30 15:33:02 -05:00
charles lefebvre
29a9d30219 Add a InitNotifyFlags function to UBTAuxiliaryNode, UBTTaskNode, UBTCompositeNode and UBTDecorator to setup the various flags that must be set when some functions are overriden.
Add macros to call those functions, this is necessary as those functions are protected.
Use those macros in various nodes (not all of them, this is not possible for some blueprint tasks)
#tests PIE
[REVIEW] Maxime.Mercier, Mieszko.Zielinski
[FYI] nicolas.bonnelly, karl.dubois, Guillaume.Guay, Loic.Devaux
#rnx

#ROBOMERGE-AUTHOR: charles.lefebvre
#ROBOMERGE-SOURCE: CL 18328294 via CL 18328312 via CL 18328326 via CL 18329146 via CL 18329236
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)

[CL 18329324 by charles lefebvre in ue5-release-engine-test branch]
2021-11-30 14:51:14 -05:00
bob tellez
3c018f315a #UE Add commandline option to avoid following redirectors in collections during startup. You sometimes want to make collections of redirectors when audting content
#ROBOMERGE-AUTHOR: bob.tellez
#ROBOMERGE-SOURCE: CL 18327503 via CL 18327514 via CL 18327529 via CL 18328464 via CL 18328574
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)

[CL 18328663 by bob tellez in ue5-release-engine-test branch]
2021-11-30 14:20:47 -05:00
yoan stamant
bcfe631edb [VisualLogger] fixed typo in tooltip
#rb trivial

#ROBOMERGE-AUTHOR: yoan.stamant
#ROBOMERGE-SOURCE: CL 18327612 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v895-18170469)
#ROBOMERGE[STARSHIP]: UE5-Release-Engine-Staging Release-5.0

[CL 18327636 by yoan stamant in ue5-release-engine-test branch]
2021-11-30 13:19:07 -05:00
helge mathee
3af5353c34 Input Widgets: Advanced Rotation and Transform widget
* Rotation to support multiple representations (quat, rotator, euler etc)
* Rotation widget to support mapping to single numeric channels or higher level attributes (Rotator, Quat)
* Transform widget relative / world
* Transform widget uniform scale lock
* Transform widget to map to single numeric channels or higher level attributes (FTransform, FEulerTransform)

#preflight https://horde.devtools.epicgames.com/job/61a641dac3287aab278e0fb7
#jira UE-134546
#rb lauren.barnes
[FYI] Louise.Rasmussen

#ROBOMERGE-AUTHOR: helge.mathee
#ROBOMERGE-SOURCE: CL 18325450 in //UE5/Release-5.0/... via CL 18325459
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)
#ROBOMERGE[STARSHIP]: UE5-Main

[CL 18325471 by helge mathee in ue5-release-engine-test branch]
2021-11-30 11:02:35 -05:00
sara schvartzman
1320f5a3c3 Control Rig: Fix horde compiler error in EjectNode
#jira na
#rb trivial
#preflight 61a613a7c3287aab278b8bf7

#ROBOMERGE-AUTHOR: sara.schvartzman
#ROBOMERGE-SOURCE: CL 18323243 in //UE5/Release-5.0/... via CL 18323249
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)
#ROBOMERGE[STARSHIP]: UE5-Main

[CL 18323253 by sara schvartzman in ue5-release-engine-test branch]
2021-11-30 07:28:41 -05:00
sara schvartzman
21957c2acd Control Rig: Copy python script not setting the control transforms correctly
#jira UE-135784
#rb helge.mathee
#preflight 61a50c900f18b1544169d57f

#ROBOMERGE-AUTHOR: sara.schvartzman
#ROBOMERGE-SOURCE: CL 18322835 in //UE5/Release-5.0/... via CL 18322839
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)
#ROBOMERGE[STARSHIP]: UE5-Main

[CL 18322843 by sara schvartzman in ue5-release-engine-test branch]
2021-11-30 05:16:12 -05:00