Commit Graph

54 Commits

Author SHA1 Message Date
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
Rob Gay
3dd745da4e Fallback to sorting display name alphabetically if SortOrder not provided or results in a tie.
#jira UE-146244
#rb phil.popp
#preflight 62326654cf609c54b1ffd9db
#preflight 62326ef0e2541b4ff3b7fcf1

[CL 19414958 by Rob Gay in ue5-main branch]
2022-03-16 19:27:27 -04:00
helen yang
b351362644 Fix missing MetaSound interface warning and interfaces not updating referencing graphs properly
#jira UE-144323
#jira UE-144366

#rb phil.popp, rob.gay
#preflight 621faa4b31454c90cc013cff
#rnx


#ROBOMERGE-AUTHOR: helen.yang
#ROBOMERGE-SOURCE: CL 19223899 via CL 19226239 via CL 19226369 via CL 19226572 via CL 19226733
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v921-19075845)

[CL 19230244 by helen yang in ue5-main branch]
2022-03-02 16:52:01 -05: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
aaron mcleran
e79529af7a Fixing one-shot interface issues
#rb Rob.Gay
#jira UE-139680
#preflight 620d3d228a1ea1600981931f


#ROBOMERGE-AUTHOR: aaron.mcleran
#ROBOMERGE-SOURCE: CL 19093707 via CL 19095893 via CL 19096208 via CL 19097039 via CL 19105391
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v921-19075845)

[CL 19146717 by aaron mcleran in ue5-main branch]
2022-02-25 09:45:49 -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
6c69365c1f - Fix & re-enable manual update of node class if auto-update is disabled or node class is updated and original class is missing
- Fix updating default value for a graph input not compositionally propagating to references
- Fix 'Reset to Class Default' sometimes showing when it isn't applicable (ex. on triggers or when the class default is out-of-date)
#rb phil.popp
#rnx
#jira UE-135832, UE-138819
#preflight 6204113ad619b08d92f542f4

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

[CL 18929238 by rob gay in ue5-main branch]
2022-02-09 19:27:40 -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
6887608d07 - Version MetaSound asset graph name FText being generated from file name & copied to MetaSound asset.
- Add missing user-defined fields to MetaSound graph options (ex. IsDeprecated, Keywords, etc.) and force update on transient style changeID (TODO: Probably would make more sense for Metadata FText to live on style struct and share that transient ChangeID, so that non-runtime changes to FText metadata wouldn't bump the change ID)
[CODEREVIEW] helen.yang
#jira UE-137696
#rnx
#preflight 61f870c0a6632a34f35e5e3c

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

[CL 18822116 by rob gay in ue5-main branch]
2022-02-02 02:19:16 -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
Marc Audy
0c3be2b6ad Merge Release-Engine-Staging to Test @ CL# 18240298
[CL 18241953 by Marc Audy in ue5-release-engine-test branch]
2021-11-18 14:37:34 -05:00
aurel cordonnier
a6e741e007 Merge from Release-Engine-Staging @ 17915896 to Release-Engine-Test
This represents UE4/Main @17911760, Release-5.0 @17915875 and Dev-PerfTest @17914035

[CL 17918595 by aurel cordonnier in ue5-release-engine-test branch]
2021-10-25 20:05:28 -04:00