140 Commits

Author SHA1 Message Date
rob gay
e637f1ecef Fix for multiple referenced nodes of the same asset class not all auto-updating their interface when placed on multiple pages of the same MetaSound asset.
#jira UE-226390
#rnx
[FYI] jon.huller, sondra.moyls
#rb helen.yang

[CL 36871971 by rob gay in 5.5 branch]
2024-10-04 14:27:34 -04:00
rob gay
47e4e35c82 - Enable default page to not be targetable, allowing for removal at cook
- Add faux platform "editor" (ignores cook settings) and "default" (all platforms without specific target settings) as auditionable for faster workflow/more intuitive behavior
- Implement feedback to distinguish "audition page" (editor only concept) vs "target page" (runtime concept)
- Warn when auditioning  graphs that are not cooked/targeted for an assigned audition platform (as default input values cannot be resolved accordingly) in MetaSound Asset editor
- Add more editor/UX protections around having invalid settings where a platform has no target set

#jira UE-193186, UE-219821
#rb helen.yang
[FYI] sondra.moyls, jon.huller, Seth.Weedin, carlos.egas
#rnx

[CL 35930645 by rob gay in ue5-main branch]
2024-08-30 12:53:13 -04:00
rob gay
f2b5b9810f - Rename feedback from prior MetaSound page cook submission
- Fix for runtime-generated MetaSounds asserting when registering from minor oversight in earlier CL
- Exposition of page editor enablement for subsequent page default CL in review

#rb helen.yang, rob.gay
#tests automated PIE and unit
#jira UE-219821, UE-193186

[CL 35788266 by rob gay in ue5-main branch]
2024-08-23 23:03:23 -04:00
rob gay
845f2318dc Round 2 post backouts w/fix (always provide at least default target page when cooking if no project page settings are supplied):
Update MetaSound cook to strip unsupported MetaSound platform page data
Page resolution perf/selection improvements
- Add option to disable MetaSound audition (page & platform) settings in PIE (default to enabled)
- Add ability for project to override resolved pageID
- Avoid constant set reallocation for now frequently-used page ID resolution (as inputs now call during generation independent of graph)
- Add trace event scope for page resolution perf monitoring

#jira UE-219821, UE-193186
#rb phil.popp, helen.yang
#rnx
[FYI] jon.huller, sondra.moyls, Seth.Weedin

[CL 35787942 by rob gay in ue5-main branch]
2024-08-23 21:59:54 -04:00
rob gay
92cfab856b [Backout] - CL35783574
[FYI] Rob.Gay
Original CL Desc
-----------------------------------------------------------------
Update MetaSound cook to strip unsupported MetaSound platform page data

#jira UE-193186, UE-194160
#rb phil.popp, helen.yang
#rnx
[FYI] sondra.moyls, jon.huller

[CL 35785849 by rob gay in ue5-main branch]
2024-08-23 19:07:53 -04:00
rob gay
4f7ee4c0bb Update MetaSound cook to strip unsupported MetaSound platform page data
#jira UE-193186, UE-194160
#rb phil.popp, helen.yang
#rnx
[FYI] sondra.moyls, jon.huller

[CL 35783577 by rob gay in ue5-main branch]
2024-08-23 17:27:50 -04:00
rob gay
4bcc279ddd Add initial page implementation of input class default literals
#jira UE-219821
#rb phil.popp
#rnx

[CL 35115150 by rob gay in ue5-main branch]
2024-07-26 14:23:35 -04:00
rob gay
cd2b34a92b Fix naming inconsistencies (feedback from prior CL)
#rb rob.gay
[FYI] phil.popp
#rnx

[CL 34946565 by rob gay in ue5-main branch]
2024-07-19 17:36:32 -04:00
jake burga
b727edbfec Remove "CreateOperator" functionality from MetasoundAssetProxy
#jira UE-218986
#rb phil.popp

[CL 34726107 by jake burga in ue5-main branch]
2024-06-27 18:17:11 -04:00
jake burga
263404b4e9 MetasoundAssetProxy
Create FMetasoundAssetProxy class for FMetasoundAssetBase
Make FMetasoundAssetBase inherit from IAudioProxyDataFactory to return the proxy type

#jira UE-218986
#rb phil.popp
#rnx

[CL 34718382 by jake burga in ue5-main branch]
2024-06-27 14:58:15 -04:00
rob gay
3e10271d0b Make deprecated ModifyContext mutable while deprecating calls to avoid having to invalidate builder cache on legacy controller accessor calls in favor of manipulation through non-cache clearing const document accessors
#jira UE-194160
#rb rob.gay
#rnx
[FYI] helen.yang

[CL 34571867 by rob gay in ue5-main branch]
2024-06-21 15:02:09 -04:00
rob gay
1b3382acee Guid collision fix-up follow-up renaming
#rb helen.yang, phil.popp
#rnx

[CL 34426347 by rob gay in ue5-main branch]
2024-06-17 12:51:18 -04:00
rob gay
81433d4d49 Versioning guid collision fixes
#jira UE-217835
#rb phil.popp
#rnx
[FYI] sondra.moyls
#tests local edits, audioQA automated tests, project fast cook

[CL 34376054 by rob gay in ue5-main branch]
2024-06-14 13:05:35 -04:00
rob gay
496613928a Fixed cook issues ([Backout] - CL34114021)
- Fixed regression with referencing graphs not updating
#tests AudioQA -cook
[FYI] hilda.cruz

Original CL Desc
-----------------------------------------------------------------
[Backout] - CL34112568 due to autotest error.
#rnx
[FYI] Rob.Gay
Original CL Desc
-----------------------------------------------------------------
More protections around accessing the wrong builder via the MetaSound builder registry by supplying the TopLevelPath of the asset if available when the registry has multiple conflicting entries due to bad content.
#rb helen.yang
#jira UE-216533
#rnx
[FYI] sondra.moyls

[CL 34125321 by rob gay in ue5-main branch]
2024-06-05 11:00:21 -04:00
rob gay
064e244218 - Make Version call to generate MetaSound Builder async GC-safe
- Misc clean-up
#rb phil.popp
#rnx
[FYI] helen.yang
#jira UE-216029

[CL 34017798 by rob gay in ue5-main branch]
2024-05-30 18:56:24 -04:00
rob gay
69725d945e - Checkpoint for Initial MetaSound Pages document model support
- Fix-ups for MS AssetManager leaking asset names if not registered by moving to MultiMap
- Fix-up for ResetBuilder call passing off initial delegates properly
- Make builders map mutation thread safe when loading assets async
#rnx
#tests -game, AudioQA, Unit Tests, Automated Tests
#rb phil.popp
#jira UE-194160

[CL 33983705 by rob gay in ue5-main branch]
2024-05-29 15:33:29 -04:00
rob gay
b411ae1cdf More MetaSound Asset/Builder registry clean-up
- Distinguish executing finish call from removal of register's weak pointer entry to avoid leaking stale builder registry entries
- Fix for removal calls to asset registry entries leaking during cook (due to cook package data being stripped when BeginDestroy is called)
- Fix for removing an asset manager entry that hasn't been registered with the node registry not getting removed due to the RegistryGraphKey referenced not being set on AssetBase
- Remove AssetRegistry MetaSoundEditor delegate handlers during cook that aren't used
- Add thread checks for safety to MetaSoundAssetManager
- Add better logging around AssetManager/BuilderRegistry destruction if applied prior to underlying respective entry/entries destruction
#jira UE-212969
#rb phil.popp

#rnx
#tests local AudioQA cook, loading all assets in editor, PIE, -game, automated tests, loading all assets in editor, PIE, -game

[CL 33641926 by rob gay in ue5-main branch]
2024-05-14 20:20:01 -04:00
rob gay
711a973c73 - Move MetaSoundAssetSubsystem& BuilderSubsystem implementations to monolithics that are initialized at MetaSoundEngine module load for safety
- Avoids PreDefault vs Default module Init which can interact negatively and obscurely with EngineSubsystems not being loaded prior to certain builds/scenarios where serialized assets are loaded earlier
- Sunset existing Subsystem non-UFUNCTION calls not pertaining to direct Blueprint exposition
- Optimize AssetManager to use own key vs NodeRegistryKey and TopLevelPaths vs SoftObjectPaths
- Misc module clean-up
- Misc callsite refactors to use new monolithics
#rb phil.popp
[FYI] sondra.moyls, helen.yang

#tests EngineTest & AudioQA Automation PIE Packaged Build -game

[CL 33522338 by rob gay in ue5-main branch]
2024-05-08 14:53:53 -04:00
rob gay
e8e0c199a2 Remove dependency on MetaSound engine subsystems of any kind being required to register MetaSounds with frontend
#rb rob.gay
#rnx
[FYI] sondra.moyls, phil.popp, helen.yang

[CL 33199328 by rob gay in ue5-main branch]
2024-04-24 10:36:28 -04:00
rob gay
b3ab5744bf - Fix for attempting to access EngineSubsystem during MetaSound versioning (serialization), which can assert when apparently certain commands in certain contexts can attempt to preload assets prior to the init phase.
- Minor Fix for LocText duplication
#tests BuildCookRun, -game, version MetaSounds assets in editor, PIE

[FYI] bob.tellez
Original CL Desc
-----------------------------------------------------------------
[Backout] - CL33084850
[FYI] Rob.Gay
Original CL Desc
-----------------------------------------------------------------
Version Metasound Document to include all ed data and make all Metasound EdGraph data transient
- Add input template nodes
- Add comment node data to document
- Keep references to member literal data (i.e. knob/slider ranges) in document metadata to ensure continued serialization and flexibility to add more editor-only fields and literal metadata
- Misc builder API updates, bug fixes and migration of controllers to builder API in anticipation of pages
- Sunset non-deterministic guid cvar
#rb phil.popp, helen.yang
[FYI] sondra.moyls
#tests Standard Automated Audio Tests, EngineTests, Offline QA Smoke pass, CPR, etc., extensive MetaSound Editor use, -game MetaSound qa levels, AudioUnitTests
#jira UE-194159

[CL 33102023 by rob gay in ue5-main branch]
2024-04-19 10:09:04 -04:00
bob tellez
416e6c17d8 [Backout] - CL33084850
[FYI] Rob.Gay
Original CL Desc
-----------------------------------------------------------------
Version Metasound Document to include all ed data and make all Metasound EdGraph data transient
- Add input template nodes
- Add comment node data to document
- Keep references to member literal data (i.e. knob/slider ranges) in document metadata to ensure continued serialization and flexibility to add more editor-only fields and literal metadata
- Misc builder API updates, bug fixes and migration of controllers to builder API in anticipation of pages
- Sunset non-deterministic guid cvar
#rb phil.popp, helen.yang
[FYI] sondra.moyls
#tests Standard Automated Audio Tests, EngineTests, Offline QA Smoke pass, CPR, etc., extensive MetaSound Editor use, -game MetaSound qa levels, AudioUnitTests
#jira UE-194159

[CL 33096249 by bob tellez in ue5-main branch]
2024-04-18 23:43:05 -04:00
rob gay
184db3803e Version Metasound Document to include all ed data and make all Metasound EdGraph data transient
- Add input template nodes
- Add comment node data to document
- Keep references to member literal data (i.e. knob/slider ranges) in document metadata to ensure continued serialization and flexibility to add more editor-only fields and literal metadata
- Misc builder API updates, bug fixes and migration of controllers to builder API in anticipation of pages
- Sunset non-deterministic guid cvar
#rb phil.popp, helen.yang
[FYI] sondra.moyls
#tests Standard Automated Audio Tests, EngineTests, Offline QA Smoke pass, CPR, etc., extensive MetaSound Editor use, -game MetaSound qa levels, AudioUnitTests
#jira UE-194159

[CL 33085078 by rob gay in ue5-main branch]
2024-04-18 16:50:48 -04:00
phil popp
29f9782306 Log error when failing to find interface for metasound
#rb Rob.Gay

[CL 32475660 by phil popp in ue5-main branch]
2024-03-25 13:35:20 -04:00
phil popp
89bea1a445 Fix clamping on metasound block rate override
#rnx
#jira UE-208569
#rb jimmy.smith

[CL 32003571 by phil popp in ue5-main branch]
2024-03-04 17:47:30 -05:00
phil popp
60e89663cd Fix race condition in metasound editor and async graph registration
#jira UE-204828, UE-199013
#rb Rob.Gay


#changelist validated
#virtualized

[CL 31218733 by phil popp in ue5-main branch]
2024-02-06 12:15:47 -05:00