Commit Graph

44 Commits

Author SHA1 Message Date
phil popp
b0380ec246 Metasound Frontend Search Engine Memory Improvements
- Split out search engine into Core functionality and EditorOnly functionality
- Removed some ISearchEngine integration in the INodeController
- Fixed up callsites that were relying on EditorOnly ISearchEngine functionality on non-editor builds.
#jira UE-147632
#rb Aaron.McLeran
#preflight 626709dc0231ca6c0d8d892e

[CL 19908865 by phil popp in ue5-main branch]
2022-04-25 16:59:41 -04:00
Rob Gay
4961b2bd23 Fix additional spot missing rename feedback from prior CL: predicate --> projection
#rb phil.popp
#rnx
#jira none
#preflight 62339ecfe14776a6ebc278cc

[CL 19427000 by Rob Gay in ue5-main branch]
2022-03-17 16:56:13 -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
rob gay
350e70d3e3 AssetClassID generation fix-up (collab fixes w/Helen)
0 Guid MetaSound AssetRegistry entry fix-up
#rb helen.yang
#rb rob.gay
#rnx
#jira UE-144864
#preflight 6226ab981938e4deaa7f4276

#ROBOMERGE-AUTHOR: rob.gay
#ROBOMERGE-SOURCE: CL 19307367 in //UE5/Release-5.0/... via CL 19308413
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v926-19321884)

[CL 19347405 by rob gay in ue5-main branch]
2022-03-10 21:19:13 -05:00
rob gay
e8fb5fcd0b - Fix sort order not propagating to presets
- Fix for interfaces not updating/some manipulators being incorrectly editable on MetaSound Presets
- Clarify Set vs Synchronize location on MSEdGraphNodes
- Split up RefreshDetails to RefreshDetails/Interfaces & move RefreshInterface to RefreshGraphMemberMenu
#rb helen.yang
#rnx
#jira UE-144184, UE-144358
#preflight 621ff6b9901d830f366e5369

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

[CL 19237376 by rob gay in ue5-main branch]
2022-03-02 22:11:18 -05:00
phil popp
cbdaf267bb Log warning when node connection is dropped during auto-update due to removed vertex.
#rnx
#jira UE-120726
#rb Rob.Gay
#lockdown Nick.Whiting
#preflight 621e6805257fd6e0992bb2ed

#ROBOMERGE-AUTHOR: phil.popp
#ROBOMERGE-SOURCE: CL 19204066 in //UE5/Release-5.0/... via CL 19209221
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v921-19075845)

[CL 19215316 by phil popp in ue5-main branch]
2022-03-01 21:25:04 -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
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
5452cd8168 MetaSound Composition Fixes
- Removed need for marking ed graph nodes for refresh in most places in favor of using frontend class metadata/interface guids to signify an ed node requiring a refresh
- Update CanAutoUpdate to always provide interface changes if the metadata/interface guids change and return true, even if the runtime properties do not report
 changes, so the editor can adequately update referenced classes that have only asthetic updates
#rb helen.yang
#jira UE-136242
#jira UE-137696
#rnx
#preflight 61f8343168795b2f45820e03

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

[CL 18796687 by rob gay in ue5-main branch]
2022-01-31 15:53:54 -05:00
michael noland
cff7a1c194 Metasounds: Updated GetOwningAssetName to return GetPathName, and renamed FAutoUpdateRootGraph's member to DebugAssetPath to make the intention/uses clear
[CODEREVIEW] rob.gay
#preflight none

#ROBOMERGE-AUTHOR: michael.noland
#ROBOMERGE-SOURCE: CL 18750549 in //UE5/Release-5.0/... via CL 18750556 via CL 18750655
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v903-18687472)

[CL 18750663 by michael noland in ue5-main branch]
2022-01-27 00:45:28 -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
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
472ba41220 Fix bug with document dependency synchronization by refactoring Document FrontendClass Synchronization to be more clear by renaming as RemoveUnreferencedDependencies & adding option to FindOrAddClass to synchronize if class is found already with registry
#rb phil.popp
#rnx
#jira UE-137696
#preflight 61e8a561da16597a1f4967c3

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

[CL 18669641 by rob gay in ue5-main branch]
2022-01-19 19:32:01 -05:00
rob gay
58fd2d7149 AutoUpdate Clean-up
- Clarifies single point-of-execution
- Removes dead dirtying branch
- Add owning asset's path to transform for better logging when updating node/reference is missing
#rb phil.popp
#rnx
#jira none
#preflight 61e73d961479b607fad5a62b

#ROBOMERGE-AUTHOR: rob.gay
#ROBOMERGE-SOURCE: CL 18650562 in //UE5/Release-5.0/... via CL 18650585 via CL 18650616
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v900-18638592)

[CL 18650650 by rob gay in ue5-main branch]
2022-01-18 18:06:06 -05:00
phil popp
cc3974e78c Cleanup metasound deprecation wording in code.
Add visual warning for deprecated metasound nodes.
#rb Rob.Gay
#jira UE-137119
#preflight 61e04af4797757aace801bf4

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

[CL 18597823 by phil popp in ue5-main branch]
2022-01-13 11:36:48 -05:00
rob gay
3e9eab6da9 - Rename & redirect MetaSoundEditorGraph<Input>Literals to MetaSoundEditorGraph<DefaultMember>Literals
- First pass at consolidating editor code for API members/vertices where possible
- Make Variables & Output now use default literal for input value (so user doesn't have to hunt down literal box in graph)

Various bug fixes:
- Fixes crash in post undo after updating a variable default
- Fixes ':Array' flavor showing up in new SearchableComboBox when selecting `Is Array` for literal type
- Synchronize variable setter default literal with variable interface default literal
- Provide default literal field for outputs & variables for consistency
    - Added win is widget support for single input/output types (i.e. floats for now)
- Don't show trigger simulate option on non-transmissible inputs (ex. OnPlay)
- Set simulate button visibility to only show when parameter transmission is supported by input
- Make simulate buttons in graph only visible when sound plays
- Start sounds automatically when clicking simulate in inspector
- Fixed initial condition "holding" trigger state for trigger routing now that Transmission System is only used inter-MetaSound (not intra-MetaSound) and we are deprecating Send/Receives

#rb phil.popp
#rnx
#jira UE-135813
#jira UE-132900
#jira UE-135844
#jira UE-116867
#jira UE-135366
#jira UE-137310
#preflight 61b7afe4fc570891338fea08

#ROBOMERGE-AUTHOR: rob.gay
#ROBOMERGE-SOURCE: CL 18450046 in //UE5/Release-5.0/... via CL 18450065
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v897-18405271)

[CL 18450072 by rob gay in ue5-release-engine-test branch]
2021-12-13 18:15:01 -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
01084c3c2c Properly early out if MetaSound Preset's reference could not be or is not loaded properly
#rb phil.popp
#jira none
#preflight 619d793a47752856c972bbff
#rnx

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

[CL 18288009 by rob gay in ue5-release-engine-test branch]
2021-11-24 15:45:43 -05:00
rob gay
3ab8eb9b4c Fix missing arg for formatted comment
#rb trivial
#jira none
#rnx

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

[CL 18278209 by rob gay in ue5-release-engine-test branch]
2021-11-23 19:07:34 -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