Commit Graph

17 Commits

Author SHA1 Message Date
Helge Mathee
7eb666ee61 RigVM: Array Dispatches
#rb sara.schvartzman
#jira na
#preflight https://horde.devtools.epicgames.com/job/639353040236bc17ce9f635f

[CL 23565632 by Helge Mathee in ue5-main branch]
2023-01-03 09:23:55 -05:00
Helge Mathee
781b4aa049 RigVM: Control Flow functionality - core side
#rb sara.schvartzman
#fyi jaime.cifuentes
#preflight https://horde.devtools.epicgames.com/job/63776859f514e1ded9a29455

[CL 23192178 by Helge Mathee in ue5-main branch]
2022-11-18 06:25:07 -05:00
Helge Mathee
32963f057c RigVM: Centralize use of RigVMExecuteContext
#rb halfdan.ingvarsson
#jira UE-169677
#preflight https://horde.devtools.epicgames.com/job/636cc3b24d3c1d9d92868927

[CL 23073598 by Helge Mathee in ue5-main branch]
2022-11-10 04:36:01 -05:00
sara schvartzman
7ef7471729 Control Rig: Fix Reroute, If, Select, Array nodes not available when pulling from a pin
#jira UE-168032, UE-168033
#rb helge.mathee
#preflight https://horde.devtools.epicgames.com/job/6356b2773a547c3da323b609

[CL 22748352 by sara schvartzman in ue5-main branch]
2022-10-25 05:45:35 -04:00
bryan sefcik
0beee50b45 Updated ../Engine/Source/Developer/... to inline gen.cpp files
Before:
Total CPU Time: 53783.640625 s
Total time in Parallel executor: 558.66 seconds
After:
Total CPU Time: 47886.140625 s
Total time in Parallel executor: 498.81 seconds

#jira

[CL 22173145 by bryan sefcik in ue5-main branch]
2022-09-24 13:31:25 -04:00
jack cai
70bc5b69f4 RigVMRegistry: Added support for user defined type addition and removal
Important notes:
1. We should now use TypeUtils::GetUniqueStructName  instead of struct->getstructcppname for type names used by the registry since user defined struct need to have unique names generated for them

2. We should be aware that we can have invalid permutations in templates when types are deleted, so make sure you check for typeindex != INDEX_NONE when looping over permutations

#jira UE-152930
#rb Sara.schvartzman, Benoit.gadreau, Halfdan.Ingvarsson
#preflight https://horde.devtools.epicgames.com/job/6310c6992a5406d810d5a0e8

[CL 21754534 by jack cai in ue5-main branch]
2022-09-01 23:33:24 -04:00
jack cai
bd96706d1f RigVM: 1. Added missing execute context type patching during argument type registration.The same patching process was already in place for when arguments were initially created using FRigVMTemplateArgument 2. fixed a typo in Array node
#jira UE-161021 UE-160890
#rb Sara.Schvartzman, Helge.mathee, benoit.gadreau
#preflight tbd

#ROBOMERGE-OWNER: jack.cai
#ROBOMERGE-AUTHOR: jack.cai
#ROBOMERGE-SOURCE: CL 21425787 via CL 21430778 via CL 21431948 via CL 21432077
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v980-21429816)

[CL 21434623 by jack cai in ue5-main branch]
2022-08-17 19:07:05 -04:00
Helge Mathee
3b54e73b5d RigVMTemplate to perform type loading lazily
#rb audit
#jira na
#preflight https://horde.devtools.epicgames.com/job/62bc4ffa3771c5710de96b40

[CL 20874075 by Helge Mathee in ue5-main branch]
2022-06-29 09:31:30 -04:00
Helge Mathee
3d20407084 RigVM: Refactor template type system to rely on integers rather than string comparisons
* 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]
2022-06-28 13:41:23 -04:00
Helge Mathee
0fc13a0aa8 RigVM: Remove the support for arrays of arrays
#rb benoit.gadreau
#jira UE-151324
#preflight https://horde.devtools.epicgames.com/job/62b44c897749ebd99d354dea

[CL 20792908 by Helge Mathee in ue5-main branch]
2022-06-23 08:13:39 -04:00
Helge Mathee
555783edcb Control Rig / RigVM: Improve asset loading performance
- Overall Loading time went from 21.439 seconds to 7.521 seconds
 - Improved Postload from 6.643 seconds to 0.915 seconds
 - Improved InitControlRigEditor from 13.422 seconds to 4.842 seconds

#jira UE-155783
#rb benoit.gadreau
#preflight https://horde.devtools.epicgames.com/job/62b2fe202c753858830d4b11

[CL 20773015 by Helge Mathee in ue5-main branch]
2022-06-22 08:37:48 -04:00
sara schvartzman
4f7e433c98 Control Rig: Change FRigVMTemplate to USTRUCT
#jira na
#rb helge.mathee
#preflight https://horde.devtools.epicgames.com/job/629f59a2233ae0a8f8f6bc99

[CL 20538399 by sara schvartzman in ue5-main branch]
2022-06-07 11:01:59 -04:00
sara schvartzman
0937ada054 Control Rig: Fix select nodes not supporting arrays of arrays
#jira na
#rb trivial
#preflight https://horde.devtools.epicgames.com/job/6287aa2e5b568e5761f505cc

[CL 20294487 by sara schvartzman in ue5-main branch]
2022-05-20 11:00:38 -04:00
sara schvartzman
f15b37dbb1 RigVM: If, select and array nodes to inherit template node
#jira na
#rb helge.mathee
#preflight https://horde.devtools.epicgames.com/job/6260454fde50cd99bbaf6781

[CL 19848071 by sara schvartzman in ue5-main branch]
2022-04-21 09:10:19 -04:00
sara schvartzman
cad51a8a73 Control Rig: Fix python script when array nodes are present
#jira UE-135084
#rb jack.cai
#preflight 619d21f3f70a9e92db3ef361

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

[CL 18281577 by sara schvartzman in ue5-release-engine-test branch]
2021-11-24 05:34:30 -05:00
sara schvartzman
ce31e514f3 Control Rig: Fix error on python script when adding link to array node iterator with generic type pin
#jira UE-135084
#rb helge.mathee
#preflight 61964778186e9fbb9390eee2

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

[CL 18236804 by sara schvartzman in ue5-release-engine-test branch]
2021-11-18 08:00:07 -05:00
helge mathee
07e76189f3 ControlRig: Array Nodes
#rb jack.cai
#jira UE-104985 UE-104988 UE-104989 UE-104990

preflight: https://horde.devtools.epicgames.com/job/611cc8193a81b000012a0554

#ROBOMERGE-SOURCE: CL 17212884 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v855-17104924)

[CL 17212887 by helge mathee in ue5-release-engine-test branch]
2021-08-18 06:18:21 -04:00