Commit Graph

53 Commits

Author SHA1 Message Date
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
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
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
c67bb7d0a4 Clean-up upgrade note logic (do not clear in validation step and clear style field when presaving via UMetasoundEditorGraph as doing so in validation marks graph as dirty post save when not desired)
#rb helen.yang
#rnx
[FYI] sondra.moyls
#jira none
#preflight 61ef2e98ca3de856bcdea81b

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

[CL 18717179 by rob gay in ue5-main branch]
2022-01-24 19:04:00 -05:00
rob gay
55d5407a44 Rebuild keys when searching for open MetaSounds to re-register (keys could be out-of-date and cause some MetaSounds to not get re-registered when expected. Can manifests as composed graphs being out-of-date in editor and not always updating).
#rb trivial
#jira none
#rnx
[FYI] sondra.moyls
#preflight 61eb158a731e3b40889d239b

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

[CL 18695276 by rob gay in ue5-main branch]
2022-01-21 15:40:14 -05:00
rob gay
8a5b4f2ccb - Fix for not clearing MetaSound document dependency registry cache data when loading in loc builds
- Clean-up duplicate logic not needed as covered in PreSave template function
#rb trivial
#jira none
#rnx
#preflight 61ea5f91c92021e535b0ae4e

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

[CL 18692330 by rob gay in ue5-main branch]
2022-01-21 13:34:39 -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
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
aaron mcleran
7fe9a945c8 Fixing versioning with metasounds
#jira UE-137762
#rb Rob.Gay
#preflight trivial

#ROBOMERGE-AUTHOR: aaron.mcleran
#ROBOMERGE-SOURCE: CL 18481426 in //UE5/Release-5.0/... via CL 18481578
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v899-18417669)

[CL 18481840 by aaron mcleran in ue5-release-engine-test branch]
2021-12-16 19:59:03 -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
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
fc542f6cfd Merge from Release-Engine-Staging @ 18081189 to Release-Engine-Test
This represents UE4/Main @18073326, Release-5.0 @18081140 and Dev-PerfTest @18045971

[CL 18081471 by aurel cordonnier in ue5-release-engine-test branch]
2021-11-07 23:43:01 -05:00
aurel cordonnier
a12d56ff31 Merge from Release-Engine-Staging @ 17791557 to Release-Engine-Test
This represents UE4/Main @17774255, Release-5.0 @17791557 and Dev-PerfTest @17789485

[CL 17794212 by aurel cordonnier in ue5-release-engine-test branch]
2021-10-12 21:21:22 -04:00
phil popp
294fe87fef Cherry pick from CL 17538469
Speedup initial play sound calls to MetaSound objects
#rb Ryan.Mangin, Rob.Gay, Aaron.McLeran
#preflight 6143700a568b3a000120cd30

#ROBOMERGE-AUTHOR: phil.popp
#ROBOMERGE-SOURCE: CL 17542606 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v870-17433530)

[CL 17542617 by phil popp in ue5-release-engine-test branch]
2021-09-16 14:46:43 -04:00
rob gay
38332680ea Move FString/FText VertexName identifers to FNames. Convention is as follows:
- FGuid IDs are used to identify unique verticies within an entire graph (currently may be duplicated if graph is duplicated).
- FNames are used to be readible vertex identifiers that are only unique within a node's API.
- FText is only for ***OPTIONAL*** DisplayNames that can be provided as a more descriptive, readible descriptor of a given vertex (But are not necessarily unique). Currently disabled until loc tool on FText property in MetaSoundDetailsCustomization is properly displayed.
#rb phil.popp
#jira UE-123982
#preflight 613f6ff892b32b00016cf188

#ROBOMERGE-AUTHOR: rob.gay
#ROBOMERGE-SOURCE: CL 17494445 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v870-17433530)

[CL 17494469 by rob gay in ue5-release-engine-test branch]
2021-09-13 14:14:37 -04:00
phil popp
d5bd663e40 Implement MetasoundGraphCore Variable
#rb Rob.Gay
#jira UE-123940
#preflight 6137af632d09b9000130e10e

#ROBOMERGE-AUTHOR: phil.popp
#ROBOMERGE-SOURCE: CL 17450011 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v870-17433530)

[CL 17450040 by phil popp in ue5-release-engine-test branch]
2021-09-07 17:07:54 -04:00
rob gay
1328563c0e - Add ability to send MetaSound object parameter types that are not SoundWaves
- Cache Audio Parameters on AudioComponent properly so they can be modified prior to playback.
- Migrate AudioComponentParameterization to SoundGeneratorParameterInterface
- AudioComponent now inherits from SoundGeneratorParameterInterface
- Unify code path with default transmitter implemented in SoundBase for legacy SoundCue parameter system

Other Minor updates:
- Rename to "Audio Instance" to "Audio Parameter" for clarity

#rb phil.popp
#jira UE-123951
#jira UE-123979
#preflight 612d0053423a8f00012ba195

#ROBOMERGE-SOURCE: CL 17355572 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v865-17346139)

[CL 17355596 by rob gay in ue5-release-engine-test branch]
2021-08-30 14:08:45 -04: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