Commit Graph

25 Commits

Author SHA1 Message Date
rob gay
b3bfab8bd3 - Fix for missing detach in PostOutputFormatChange case where persistent builder was registered when system is not ready for this (changes could be made by controllers behind the back of the builder system, snuck in from controller mutation delegate notification change)
- Fix crash if attempting to Create<Patch/Source>PresetBuilder with null script interface ref
- Misc clean-up
#rb phil.popp
#rnx
#jira UE-191633

[CL 26781686 by rob gay in ue5-main branch]
2023-08-02 14:35:48 -04:00
rob gay
42fd61fc37 - 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 26715091 by rob gay in ue5-main branch]
2023-07-31 14:25:14 -04:00
rob gay
eb936ae1d0 Only audition literal update if no edge is already set.
#rb phil.popp
#jira UE-191434
#rnx

[CL 26686435 by rob gay in ue5-main branch]
2023-07-28 16:23:27 -04:00
rob gay
48e0c4350d - 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 26661505 by rob gay in ue5-main branch]
2023-07-27 19:43:47 -04:00
rob gay
dd6ede5f18 Nuke temporary cvar for disabling MetaSound Builder audition live updates
#rb trivial
#rnx
[FYI] phil.popp
[FYI] buzz.burrows

[CL 26559743 by rob gay in ue5-main branch]
2023-07-24 19:52:06 -04:00
rob gay
0b331aaf72 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 26556901 by rob gay in ue5-main branch]
2023-07-24 17:38:26 -04:00
helen yang
fa585989cf 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 26299244 by helen yang in ue5-main branch]
2023-06-28 17:08:29 -04:00
rob gay
4858ab4ec4 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 26242483 by rob gay in ue5-main branch]
2023-06-26 15:42:30 -04:00
rob gay
586618a007 - 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

[CL 26189673 by rob gay in ue5-main branch]
2023-06-22 14:51:42 -04:00
Rob Gay
df490de7a8 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 26072389 by Rob Gay in ue5-main branch]
2023-06-16 17:48:20 -04:00
helen yang
9962c8f51a 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 26019769 by helen yang in ue5-main branch]
2023-06-15 13:50:27 -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