30 Commits

Author SHA1 Message Date
phil popp
c3415402a7 Audio unit test build fixes
#jira UE-193300
#lockdown julien.marchand
#rb rob.guay

[CL 27186108 by phil popp in 5.3 branch]
2023-08-17 17:19:56 -04:00
Rob Gay
a883eee8cc - Fix for crash when attempting to add graph input to MetaSound while auditioning builder from BP
- Fix for ensure if DataType provided to add graph input/output MetaSound Builder is invalid
#rb phil.popp
#jira UE-192614
#rnx

[CL 27158677 by Rob Gay in 5.3 branch]
2023-08-16 18:30:52 -04:00
Rob Gay
629572a7f9 Fix for MetaSound live update failing to create & forward input/output (and other currently unsupported types like variable) nodes to transactor
#rb phil.popp
#jira UE-192623
#jira UE-192614
#rnx

[CL 27117346 by Rob Gay in 5.3 branch]
2023-08-15 15:56:36 -04:00
Rob Gay
af9396d4ba - Fix for auditioning the same sound multiple times not respecting live updates on additional calls
- Upgrade Live Node Update automation tests to LiveUpdateMultipleMetaSoundSources for more comprehensive coverage
#rb helen.yang
#jira UE-192099
#rnx
#lockdown julien.marchand

[CL 26968567 by Rob Gay in 5.3 branch]
2023-08-09 15:32:55 -04:00
Rob Gay
4a29925129 - Remove --> RemoveSwap delegates to allow for handlers to not duplicate forwarded messages where applicable
- Refactor remove node handler for transactor to not do swap piecemeal, which was resulting in dropped connections
- Add test for adding/removing nodes while auditioning (excercises add/remove edges by extension)
#rb phil.popp
#rnx
#jira UE-191865

[CL 26888573 by Rob Gay in 5.3 branch]
2023-08-07 12:58:06 -04:00
Rob Gay
3f3ee5654e - 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 26781330 by Rob Gay in 5.3 branch]
2023-08-02 14:29:01 -04:00
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