Instead, add 'SourceIndex' directly to UEdGraphPin and remove the map
Too many edge cases where something would modify pins directly, and the map would get out of sync with actual pins
#jira UE-119861
#rb lauren.barnes
#ROBOMERGE-SOURCE: CL 16897567 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v836-16769935)
[CL 16897572 by ben ingram in ue5-release-engine-test branch]
- This way we don't need to move statements around, can generate both if/else scope correctly before switching back to parent scope
- Will make it easier to track locals within the current scope
#rb none
#jira none
#ROBOMERGE-SOURCE: CL 16354735 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v804-16311228)
[CL 16354746 by ben ingram in ue5-release-engine-test branch]
- Instead, use control flow materials use the regular root node, with an exec input stacked on top
- Execution begin expression remains
- Will simplify graph processing, as now we only have a single end-point
#rb none
#jira none
#ROBOMERGE-SOURCE: CL 16331502 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v804-16311228)
[CL 16331552 by ben ingram in ue5-release-engine-test branch]
- Previously exec inputs/outputs were stored along with other (data) inputs/outpus
- Problem is, for exec pins, we want each output to only support 1 connection, but multiple connections to each input. This is the opposite of data, where we support multiple output connections, but only 1 input connection
- So we flip the representation around, and store output pointers, rather than input pointers...this also better matches the way we iterate exec connections while compiling
- This does complicate some UI logic, as now input/output graph pins no longer line up exeactly with UMaterialExpression inputs/outputs (we still have a flat list of pins, but separate lists of exec/non-exec inputs/outputs)
#jira none
#rb lauren.barnes
[CL 15361599 by Ben Ingram in ue5-main branch]
- Very WIP, not intended/ready for production use
- Hidden behind CVAR to enable support, and per-material flag to opt in
#jira none
#rb rune.stubbe
[CL 15251606 by Ben Ingram in ue5-main branch]
Add composite & pinbase expressions / nodes, which use reroutes under the hood to ensure zero material overhead.
Convert MaterialEditor to a WorkflowCentricApplication.
Generally add subgraph existence support to MaterialGraph / MaterialEditor.
#jira UE-96104
#rb Ben.Ingram Lauren.Barnes
#fyi Lauren.Barnes
[CL 14437968 by daren cheng in ue5-main branch]