Commit Graph

24 Commits

Author SHA1 Message Date
Rob Gay
7466c13388 - Add ability to set node position explicitly via MetaSound Editor Subsystem
- Fix bug introduced recently with BuildToAsset not applying a clean class name/guid
- Fix case where builder was added to root and not freed
- MetaSoundEditorSubsystem minor clean-up
#rb helen.yang
#jira UE-191435 UE-191505
#rnx

[CL 26714951 by Rob Gay in 5.3 branch]
2023-07-31 14:21:10 -04:00
Rob Gay
a4da8a570d Only audition literal update if no edge is already set.
#rb phil.popp
#jira UE-191434
#rnx

[CL 26686276 by Rob Gay in 5.3 branch]
2023-07-28 16:20:02 -04:00
Rob Gay
053a214231 - Make Connect... MetaSoundBuilderSubsystem API calls replace edges as needed to parallel editor behavior more
- Update MetaSoundFrontendDocumentBuilder AddEdge... API calls to support both replacement and ignoring invalid requests where applicable
#rb phil.popp
#jira UE-190989

[CL 26659820 by Rob Gay in 5.3 branch]
2023-07-27 18:35:37 -04:00
Rob Gay
5bd9cc220e Nuke temporary cvar for disabling MetaSound Builder audition live updates
#rb trivial
#jira none
#rnx
#fyi phil.popp
#fyi buzz.burrows

[CL 26559644 by Rob Gay in 5.3 branch]
2023-07-24 19:49:03 -04:00
Rob Gay
e19b76c22a Fix for MetaSound transaction stack manipulation not updating builder caches if builder is associated with edited object/asset & edge cache not initializing properly
#rb phil.popp
#jira UE-190358

[CL 26556826 by Rob Gay in 5.3 branch]
2023-07-24 17:35:47 -04:00
helen yang
5f5bdbf7aa Fix ensures when migrating MetaSound assets
- Create new class names for temporary packages created during migration to avoid duplicate node registration
- Change duplicate node registration ensure to if check with better logging of asset causing collision

#jira UE-161039
#jira UE-175059
#jira UE-188854
#rb rob.gay

[CL 26299112 by helen yang in 5.3 branch]
2023-06-28 17:05:14 -04:00
Rob Gay
329fb2c898 Fix ConnectNode<In/Out>sToMatchingGraphInterface<In/Out>puts
- Add tests for connecting & disconnecting nodes that match graph interfaces
- Rename test accordingly
#rnx
#jira UE-186188
#rb helen.yang

[CL 26242420 by Rob Gay in 5.3 branch]
2023-06-26 15:40:12 -04:00
Rob Gay
ffdd4391f0 - Added test for binding interfaces & fixed following fallout
Major:
- Added missing input MetaSound audio interfaces
- Fixed interface bindings not working with referenced transient, non-asset MetaSounds

Minor:
- Fix builder name not being propagated to transient builders
- Fix not defaulting to success enum when creating patch builder
- Generalized pool of named/registered builders on Builder Subsystem instead of having them per type (to support future types without having to update the subystem for each additional future type.)
#rb helen.yang
#jira todo

[CL 26189337 by Rob Gay in 5.3 branch]
2023-06-22 14:43:52 -04:00
rob gay
48b172ac25 Initial work to pipe builder updates to dynamic graph
- Add delegates to respond to builder changes to document
- Add delegate handlers to source builder to forward requests to audition sound if live update enabled
- Misc piping for live updating
#jira UE-186952
#ok forgithub public
#rb phil.popp

[CL 26072716 by rob gay in 5.3 branch]
2023-06-16 17:55:08 -04:00
helen yang
bfc89041be Copy soundbase/soundwave settings from referenced MetaSound source to new preset
- Add option to BuildToAsset to copy settings from a given template SoundWave
- Update CreatePreset right click asset action to use builder instead of factory

#jira UE-170991
#rb rob.gay

[CL 26039121 by helen yang in 5.3 branch]
2023-06-16 03:08:48 -04:00
rob gay
76c334b255 Fix .Add/.Remove copy pasta
Minor member name/comment fix ups
#rb trivial
#jira UE-186952
#rnx
#preflight skip

[CL 25683678 by rob gay in ue5-main branch]
2023-05-30 14:46:00 -04:00
helen yang
cc09fda972 Expand and consolidate MetaSound builder preset asset functionality
- Added document builder and BP functions for SetGraphInputDefault, ConvertFromPreset, ConvertToPreset, CreatePatch/SourcePresetBuilder, IsPreset
- Refactor MetaSound asset and preset initialization to use builder architecture more

#jira UE-185391
#rb rob.gay
#preflight 64710f423b73ebeef4c295bb

[CL 25683338 by helen yang in ue5-main branch]
2023-05-30 14:39:48 -04:00
rob gay
d3e70524dc - Migrate and deprecate modify interfaces transform to frontend document builder with broken up, useful functionality available now to the API (ex. SwapInput/Output)
- New version no longer uses expensive controller system
- Fix-up & condense asset/builder initialization logic that utilizes modify interface transform functionality
- Misc clean-up
#rb helen.yang
#jira UE-120184
#rnx
#preflight 645bfd468e01daf0e5b92c30

[CL 25420172 by rob gay in ue5-main branch]
2023-05-10 20:28:39 -04:00
rob gay
b17ee42ed3 Fix for ensure in the MS BP builder subsystem when attempting to add a MetaSound Node Class using a literal BP node value
#jira UE-180954
#rnx
#rb helen.yang
#preflight 64529cf1743c256cd6a98b13

[CL 25327697 by rob gay in ue5-main branch]
2023-05-03 18:06:20 -04:00
Rob Gay
366cf65d70 Speculative fix for parameter list construction issue on certain platforms
#rb trivial
#jira none
#rnx
#preflight 64347e2241783dc3d0894f21

[CL 24984638 by Rob Gay in ue5-main branch]
2023-04-10 17:45:18 -04:00
Rob Gay
3c562cf540 Jumped the gun on submit after preflight on last CL, missing fix.
#rb trivial
#jira UE-181360
#rnx
#preflight skip

[CL 24956461 by Rob Gay in ue5-main branch]
2023-04-06 16:51:46 -04:00
Rob Gay
49c739169c Fix class references misguided towards transient MetaSound class instead of MetaSound Builder class causing failures to add/remove interfaces in certain contexts
#rb phil.popp
#jira UE-181360
#preflight 642f15426d46f6b1bfac1f59
#rnx

[CL 24955760 by Rob Gay in ue5-main branch]
2023-04-06 16:32:00 -04:00
kevin cavanaugh
45a42b6042 Workaround in the metasound builder for source interfaces not being added automatically
#preflight skip
#rb charlie.huguenard
[FYI] rob.gay

[CL 24936606 by kevin cavanaugh in ue5-main branch]
2023-04-05 17:01:55 -04:00
rob gay
1de499ef8e More MetaSound Interface registry clean-up
- Move bIsDefault/bCanEdit(renamed bIsModifiable) from InterfaceRegistryEntry to Interface data definition
- Add checks in builder to disallow mutation of interfaces that shouldn't be via editor or document builder (ex. SourceInterface which is default and then never changed)
- Optimize SearchEngine query for finding default interfaces
- Tweak MetaSoundUObjectRegistry to support non MetasoundAssetBase classes and add UMetaSoundBuilderDocument. Update iterator w/optional param to only return asset types (true by default for back compat)
- Move FName class name comparitors to use new TopLevelAssetPath
#rb phil.popp
#jira UE-181360
#rnx
#p4v-preflight-copy 24658328
#preflight 642b10834d26bcd1eb0e566c

[CL 24920763 by rob gay in ue5-main branch]
2023-04-04 19:14:26 -04:00
rob gay
3d1359e314 - Fix crash when attempting to add invalid MetaSound node classes (due to them being transient assets) to a given MetaSound in its respective asset Editor.
- Remove temporary gating cvar for MetaSound builder subsystem
[FYI] sondra.moyls
[FYI] Kevin.Cavanaugh
#rb trivial
#rnx
#preflight 641e14eeb72410fc17be4b39

[CL 24791409 by rob gay in ue5-main branch]
2023-03-24 20:45:20 -04:00
rob gay
6e2c09045d - Fix for builder subsystem not able to reuse audition sound properly due to the sound not being unregistered from the MetaSound Frontend Class Registry before mutation and attempt to play/re-register. Default to register when building and don't expose option to BP (referencing unregistered assets can lead to silent failures when attempting playback later)
- Fix for const correctness causing BP functions to not provide execution path even though they're set to BlueprintCallable :(
#rb helen.yang
[FYI] seth.weedin
[FYI] kevin.cavanaugh
#preflight 641c767fa86ae7cbccd64bb9

[CL 24765400 by rob gay in ue5-main branch]
2023-03-23 14:04:36 -04:00
kevin cavanaugh
73b2ff9677 Force the metasound builder audition to create a new sound each time
#rb rob.gay
#preflight 6412404abf53fdee19aeb907

[CL 24673829 by kevin cavanaugh in ue5-main branch]
2023-03-16 13:03:16 -04:00
rob gay
0214d1c465 - Fix crash w/PostInitProperties initialization of MetaSoundDocumentBuilder
- Fix bugs with interfaces not registering with the correct UClass types
- Add missing RemoveByInterfaceBinding MS Builder function
- Builder cache fix for ContainsEdge
#rb trivial
#rnx
#preflight 640a34153c2db40029343bab

[CL 24584406 by rob gay in ue5-main branch]
2023-03-09 17:56:53 -05:00
rob gay
aeb25bb49d - Add Runtime MetaSound Builder support
- Add MetaSound Patch Interface support
- Add MetaSound Interface Bindings
#rb phil.popp
#preflight 640783bd5515f4f57b4b1268
[FYI] Sondra.Moyls
[FYI] Dan.Reynolds

[CL 24548617 by rob gay in ue5-main branch]
2023-03-07 17:01:52 -05:00