Before:
3548 unity files
Total CPU Time: 47343.578125 s
Total time in Parallel executor: 494.60 seconds
After:
3445 unity files
Total CPU Time: 46044.671875 s
Total time in Parallel executor: 468.51 seconds
#jira
#preflight 63336159b20e73a098b7f24f
[CL 22218213 by bryan sefcik in ue5-main branch]
* Switching the FRigVMTemplateArgumentType to be backed up by FName instead of FString for faster comparison
* Adding a "Types" storage under the RigVMRegistry of all of the known supported types
* Have the FRigVMTemplateArgument refer to type indices rather than full type structures
* Have the resolval comparison code rely on comparing type indices rather than type structures
* Store relationship between the bool and the TArray<bool> type as an array / element lookup within the registry - to avoid string operations when doing lookups from element to array to 2 dimensional array for a type.
* The preferred types list on the template node is now stored as pairs of argument name and type index <FName, int32> rather than FString.
* Also we no longer support all types for the untyped nodes (such as reroute, select, if etc) - but instead we support all user defined types (non-native structs and enums) as well as all types ever used as a template argument. The reasoning here is that supporting a type that's not used by any node is pointless. This reduced the type set from 9876 to 237.
#rb halfdan.ingvarsson
#jira na
#preflight https://horde.devtools.epicgames.com/job/62b9c666ba62f4498a345be2
[CL 20861728 by Helge Mathee in ue5-main branch]
todo: check for all use of IsChildOf within ControlRig to avoid future issues
#jira UE-155523 UE-155505
#rb halfdan.ingvarsson
#fyi brandon.schaefer
#preflight 6297bd5be809e387be23e44c
[CL 20457493 by benoit gadreau in ue5-main branch]
This removes some of the dependencies on UControlRigBlueprint and replaces them with 'host' interfaces for URigVMController and URigVMGraph.
Also adds support for TScriptInterfaces in RigVM. This includes a modification of the RigVM parts of UHT.
Some of these changes are due to be reworked later to allow RigVM-hosting systems to not have to be also implemented in terms of control rig.
#rb Helge.Mathee,Sara.Schvartzman
#fyi Helge.Mathee,Sara.Schvartzman
#preflight 624d857aa64871f1a11ef3f9
[CL 19645705 by Thomas Sarkanen in ue5-main branch]
Implemented unresolve as well as re-resolve node on already typed pins
Added UI in contextual menu to re-type pins
#rb sara.schvartzman
#jira UE-125892
#preflight https://horde.devtools.epicgames.com/job/622f488f505788e09ffffbe4
[CL 19372564 by Helge Mathee in ue5-main branch]
The UE_RIGVM_ENABLE_TEMPLATE_NODES is disabled in this submit for now - which disabled the creation of template nodes as well, disabled auto-update functionality during load and spawning resolved templates nodes instead of unit nodes.
We'll enable the define in a follow up submit
#rb jack.cai
#jira na
#preflight https://horde.devtools.epicgames.com/job/621de289ca28c55634199235
[CL 19196111 by Helge Mathee in ue5-main branch]
The original ENABLE_BLUEPRINT_REAL_NUMBERS macro was strictly meant for AB testing in the Dev-LWC. Currently, disabling it won't work, and would likely lead to broken behavior. Its presence might incorrectly indicate to licensees that this is an option that can be toggled safely.
#rb marc.audy
#jira UE-140327
#preflight 61fc6449dc0b3ecbecb6f381
#lockdown julien.marchand
#ROBOMERGE-AUTHOR: dave.jones2
#ROBOMERGE-SOURCE: CL 18864654 in //UE5/Release-5.0/... via CL 18864683 via CL 18864993
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v910-18824042)
[CL 18865002 by dave jones2 in ue5-main branch]