Commit Graph

34 Commits

Author SHA1 Message Date
phil popp
c49dfb1c4d MetaSound: Add constructor inputs / outputs to frontend nodes
#rb Helen.Yang
#jira UE-151659, UE-151662
#p4v-preflight-copy 20381225
#preflight 6298ca1eb72f596b0fcb2f07

[CL 20469618 by phil popp in ue5-main branch]
2022-06-02 10:50:07 -04:00
phil popp
8efec09fb3 MetaSound: Add vertex access type to frontend document in order to support constructor pins.
#jira UE-151659
#preflight 628ff53e8c077c0d6628377b

[CL 20386454 by phil popp in ue5-main branch]
2022-05-26 17:59:27 -04:00
Rob Gay
f2f944d64f MetaSound Analyzer Frontend/Graph Core Checkpoint
- Add ability to track all internal data references to a core graph
- Add AnalyzerRegistry & first pass at value/envelope analyzers
- Add support for enabling analyzing from MetaSound Generator
- Add ability for tracking colorized bounds for edges as literal-color array
#rb phil.popp
#jira UE-147027
#jira UE-147028
#jira UE-147026
#preflight 627acbae10766ef8c112264c

[CL 20129340 by Rob Gay in ue5-main branch]
2022-05-10 16:51:39 -04:00
phil popp
6eae6a1e3f [Metasound] Move various members to WITH_EDITORONLY_DATA to save on non-editor memory.
#jira UE-147633
#rb Rob.Gay
#preflight 6270074aad00dced62d0f685

[CL 20010513 by phil popp in ue5-main branch]
2022-05-02 12:35:54 -04:00
phil popp
9b1bc01a76 MetaSound FVertex simplification
- Simplifying FVertexInteface by removing VertexModel concept.
- Deprecating unwanted functions in interface.
- Simplifying storage mechanism in TVertexGroup
#jira UE-147353
#rb Rob.Gay
#preflight 62460dbde434babd8af9e93b

[CL 19578298 by phil popp in ue5-main branch]
2022-03-31 16:49:59 -04:00
rob gay
41a2a172dc Fix missing ability to order graph members
- Remove base template for node customizations now that it isn't required to be a template to enable intra-engine versioning (allows moving implementation of category customization to .cpp)
- Move redundant "Literal" property to parent UMetasoundEditorGraphMember
#rb helen.yang
#jira UE-121749
#rnx
#preflight 621d2e869a5676d19a3d50e9

#ROBOMERGE-AUTHOR: rob.gay
#ROBOMERGE-SOURCE: CL 19181623 in //UE5/Release-5.0/... via CL 19183646
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v921-19075845)

[CL 19206681 by rob gay in ue5-main branch]
2022-03-01 16:31:55 -05:00
maxwell hayes
f9c5000301 Naming gain inputs to clarify linear vs dB. (misinterpretation would appear broken)
#rb Rob.Gay
#jira UE-142956

#lockdown Nick.Whiting
#preflight 620d4027f427898d6b59d216

#ROBOMERGE-AUTHOR: maxwell.hayes
#ROBOMERGE-SOURCE: CL 19060751 in //UE5/Release-5.0/... via CL 19078565
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v921-19075845)

[CL 19121725 by maxwell hayes in ue5-main branch]
2022-02-24 14:42:58 -05:00
rob gay
4fddf8ef1c Fix MetaSound Tests Part 1
[REVIEW] helen.yang
#jira UE-142159
#preflight 620594bf6d374b98b0975fed

#ROBOMERGE-AUTHOR: rob.gay
#ROBOMERGE-SOURCE: CL 18944968 in //UE5/Release-5.0/... via CL 18945212 via CL 18946142
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v917-18934589)

[CL 18946288 by rob gay in ue5-main branch]
2022-02-10 18:36:26 -05:00
rob gay
45e4645008 Compile out editor-only data from MetaSoundFrontend
- Move Author field to FString to avoid generated text collisions (Authors should always be culture invariant anyway) & add option to override default in MetaSound user settings
#rb helen.yang
#jira UE-142159
#preflight 62055c89057375a802938669

#ROBOMERGE-AUTHOR: rob.gay
#ROBOMERGE-SOURCE: CL 18941073 in //UE5/Release-5.0/... via CL 18941268 via CL 18941634
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v917-18934589)

[CL 18941665 by rob gay in ue5-main branch]
2022-02-10 15:07:39 -05:00
rob gay
f2973c965f - Fix propagation issues with Preset input defaults
- Add UX for overriding preset inputs (allowing auto-update to pass through referenced value if not managed)
- Clarify code by moving bAutoUpdateManagestInterface to bIsPreset in new FMetasoundFrontendGraphClassPresetOptions struct
#rb phil.popp
#jira UE-136242
#preflight 6202b1bfae203853a85c6366
#rnx

#ROBOMERGE-AUTHOR: rob.gay
#ROBOMERGE-SOURCE: CL 18911247 in //UE5/Release-5.0/... via CL 18919315 via CL 18920513
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v916-18915374)

[CL 18920762 by rob gay in ue5-main branch]
2022-02-09 12:52:07 -05:00
rob gay
655f3ea998 Tidy up feedback from earlier CL
- Rename 'GenerateClassDescription' functions/comments for clarity regarding what they're acting upon
- Remove global, unused 'GenerateClassMetadata'
#rb phil.popp
#jira none
#rnx
#preflight 61f84e025a026d2d19b70e11

#ROBOMERGE-AUTHOR: rob.gay
#ROBOMERGE-SOURCE: CL 18797042 in //UE5/Release-5.0/... via CL 18797879 via CL 18799090
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v908-18788545)

[CL 18799213 by rob gay in ue5-main branch]
2022-01-31 17:23:08 -05:00
rob gay
4aa9fc06e5 Fix missing copy for style to registry from code-defined MetaSound node classes, causing math nodes to show inputs, outputs, names, & no icons & sort order for pins to be wrong.
#preflight 61f8313f114ec25fe0acf78d

#ROBOMERGE-AUTHOR: rob.gay
#ROBOMERGE-SOURCE: CL 18794142 in //UE5/Release-5.0/... via CL 18795221 via CL 18796206
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v908-18788545)

[CL 18796528 by rob gay in ue5-main branch]
2022-01-31 15:48:27 -05:00
rob gay
1e6ee23838 - Fix interface vertex metadata still serializing text during presave.
- Fix node tooltips caching old strings & improperly displaying them if a node's tooltips are modified but the node is not versioned

Minor Clean-up:
- Move interface registry generation logic to static function to mirror metadata's analogous call
- Remove misleading, unused GetPinTooltip cruft from SMetasoundGraphPin

[CODEREVIEW] phil.popp
#jira none
#rnx
#preflight 61f23629e12e3fcf9b324887

#ROBOMERGE-AUTHOR: rob.gay
#ROBOMERGE-SOURCE: CL 18750829 in //UE5/Release-5.0/... via CL 18750848 via CL 18750876
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v903-18687472)

[CL 18750878 by rob gay in ue5-main branch]
2022-01-27 01:31:46 -05:00
rob gay
e00c7856fa Move any places where FText is copied to a MetaSound document to transient UProperties that are populated by external registries (i.e. the interface registry & the class registry)
#rb phil.popp
#rnx
#jira none
#preflight 61f1cc37c0033b39f89ee39c

#ROBOMERGE-AUTHOR: rob.gay
#ROBOMERGE-SOURCE: CL 18746974 in //UE5/Release-5.0/... via CL 18746984 via CL 18747190
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v903-18687472)

[CL 18747199 by rob gay in ue5-main branch]
2022-01-26 18:11:52 -05:00
rob gay
5f7d196518 Move error to warning & add more information regarding asset missing dependency
#rb trivial
#jira none
#rnx
#preflight skip

#ROBOMERGE-AUTHOR: rob.gay
#ROBOMERGE-SOURCE: CL 18686667 in //UE5/Release-5.0/... via CL 18686696 via CL 18686698
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v902-18672795)

[CL 18686705 by rob gay in ue5-main branch]
2022-01-21 00:53:01 -05:00
rob gay
fe1d4b93a4 Don't serialize cached dependency data on MetaSound graphs to avoid text desync or out-of-date data when autoupdate is disabled for a given asset.
TODO: Split out FMetasoundFrontendClass to class & dependency struct, where dependency is only the information required to find an item in the registry and potentially a couple non-localized breadcrumbs
#rb phil.popp
#jira none
#rnx
#preflight 61e8f894276892ce10892644
#preflight 61e9f7f91739bb8724e071ec

#ROBOMERGE-AUTHOR: rob.gay
#ROBOMERGE-SOURCE: CL 18684546 in //UE5/Release-5.0/... via CL 18684559 via CL 18684566
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v902-18672795)

[CL 18684575 by rob gay in ue5-main branch]
2022-01-20 19:19:55 -05:00
rob gay
2d696b4645 Remove implicit constructor for FMetasoundFrontendClass
- Favor static factory style initializer to clarify when it is being generated as a registry description (and thus has no ID/explicitly set type)
#rb phil.popp
#jira none
#rnx
#preflight 61e87f0a8022cea65695add6

#ROBOMERGE-AUTHOR: rob.gay
#ROBOMERGE-SOURCE: CL 18666405 in //UE5/Release-5.0/... via CL 18666425 via CL 18668075
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v901-18665521)

[CL 18668230 by rob gay in ue5-main branch]
2022-01-19 18:24:30 -05:00
phil popp
3519ebada8 Deprecate send and receive nodes
#jira UE-137119
#rb Jimmy.Smith
#preflight 61df3c5a484d866ec01d358b

#ROBOMERGE-AUTHOR: phil.popp
#ROBOMERGE-SOURCE: CL 18589115 in //UE5/Release-5.0/... via CL 18589194 via CL 18589235
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Test -> Main) (v899-18417669)

[CL 18589271 by phil popp in ue5-main branch]
2022-01-12 15:58:54 -05:00
rob gay
3bdc09e2a5 Backout out backed out changelist 18369256 (includes AudioComponent redirect fix)
-----------------------------------------------------------------
MetaSounds Interfaces Checkpoint 2:
- Version up source archetypes to become two interfaces: channel interfaces (mono/stereo) & base source namespace
- Clean-up Interface panel to support namespacing better
- Fix bugs with assuming interfaces are always and the only base namespace members
- Allow namespacing for any arbitrary interface member
- Add lock icon to clarify what interface members cannot be modified individually (i.e. cannot add, remove, or rename them as they are interface members)
- Organize members alphabetically
#jira UE-135000
#rnx
#rb phil.popp
#preflight 61a7d1079c77d610079303ec
#p4v-cherrypick 18344347

#ROBOMERGE-AUTHOR: rob.gay
#ROBOMERGE-SOURCE: CL 18413245 via CL 18413381 via CL 18413401 via CL 18434953 via CL 18437303
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v897-18405271)

[CL 18437360 by rob gay in ue5-release-engine-test branch]
2021-12-10 20:37:31 -05:00
aurel cordonnier
3e68a3edef [Backout] - CL18345215
[FYI] rob.gay
Original CL Desc
-----------------------------------------------------------------
MetaSounds Interfaces Checkpoint 2:
- Version up source archetypes to become two interfaces: channel interfaces (mono/stereo) & base source namespace
- Clean-up Interface panel to support namespacing better
- Fix bugs with assuming interfaces are always and the only base namespace members
- Allow namespacing for any arbitrary interface member
- Add lock icon to clarify what interface members cannot be modified individually (i.e. cannot add, remove, or rename them as they are interface members)
- Organize members alphabetically
#jira UE-135000
#rnx
#rb phil.popp
#preflight 61a7d1079c77d610079303ec
#p4v-cherrypick 18344347

#ROBOMERGE-AUTHOR: aurel.cordonnier
#ROBOMERGE-SOURCE: CL 18369256 via CL 18369273 via CL 18369290 via CL 18434224 via CL 18435611
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v897-18405271)

[CL 18436532 by aurel cordonnier in ue5-release-engine-test branch]
2021-12-10 19:13:22 -05:00
rob gay
d2e6910760 MetaSounds Interfaces Checkpoint 2:
- Version up source archetypes to become two interfaces: channel interfaces (mono/stereo) & base source namespace
- Clean-up Interface panel to support namespacing better
- Fix bugs with assuming interfaces are always and the only base namespace members
- Allow namespacing for any arbitrary interface member
- Add lock icon to clarify what interface members cannot be modified individually (i.e. cannot add, remove, or rename them as they are interface members)
- Organize members alphabetically
#jira UE-135000
#rnx
#rb phil.popp
#preflight 61a7d1079c77d610079303ec

#ROBOMERGE-AUTHOR: rob.gay
#ROBOMERGE-SOURCE: CL 18344347 in //UE5/Release-5.0/... via CL 18344412
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)

[CL 18344446 by rob gay in ue5-release-engine-test branch]
2021-12-01 15:59:03 -05:00
rob gay
ff8b5954ac MetaSounds Interface Checkpoint
- Archetype to Interface rename & support for multiple interface versions stored on MetaSoundBase
- Added ability to register interfaces
- Added spatialization/attenuation interfaces
- Added UX to add/remove Interfaces
- Fix ensure when deleting UMetaSound asset
#rb phil.popp
#jira UE-135000
#jira UE-120656
#rnx
#preflight 619bd9e33a7219926732337c

#ROBOMERGE-AUTHOR: rob.gay
#ROBOMERGE-SOURCE: CL 18262648 in //UE5/Release-5.0/... via CL 18262703
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)

[CL 18262725 by rob gay in ue5-release-engine-test branch]
2021-11-22 15:55:50 -05:00
phil popp
9d254b5828 Factor out metasound data type registration
#rb Rob.Gay
#jira UEAU-834
#preflight 611d834c9db7df000138d786

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

[CL 17233468 by phil popp in ue5-release-engine-test branch]
2021-08-19 09:59:27 -04:00
rob gay
ab8b6faad9 First pass on MetaSound Composition/Preset Support
- Stubbed in logic & assets for MetaSound Editor UX node type differentiation
#rb phil.popp
#preflight 60ff8c19d8303000018f29fb

#ROBOMERGE-SOURCE: CL 16969987 via CL 16972219
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v838-16927207)

[CL 16972392 by rob gay in ue5-release-engine-test branch]
2021-07-27 15:36:03 -04:00
phil popp
9d97f55050 Creating metasound archetype registry and upgrade path
#rb Rob.Gay

#ROBOMERGE-SOURCE: CL 16766481 via CL 16766487
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v835-16672529)

[CL 16766497 by phil popp in ue5-release-engine-test branch]
2021-06-23 20:08:21 -04:00