Commit Graph

58 Commits

Author SHA1 Message Date
rob gay
94e46a67f9 Initial MetaSound Editor Page Support (cvar disabled until all transactions are supported and tested)
#jira UE-194160
#rb phil.popp
#rnx
#tests PIE, MetaSound Asset Editor, Engine Automation tests

[CL 34535569 by rob gay in ue5-main branch]
2024-06-20 13:33:47 -04:00
rob gay
be35f85305 - Move duplication to re-use registered builder at different points of duplication process as multiple builders per class name in the builder registry its now supported
- Give asset builders proper names based off the MetaSound asset being built for easier debugging
- Add log supression during duplication from spamming user as brief existence of multiple builders with shared class name is expected behavior (Leaving disabled until cook can be verified log is not being hit)
#rb helen.yang
#jira UE-216532
[FYI] sondra.moyls
#rnx

[CL 34245724 by rob gay in ue5-main branch]
2024-06-10 13:52:48 -04:00
rob gay
5da31697ae Fix non-standard include path
#rb rob.gay
#rnx

[CL 34179773 by rob gay in ue5-main branch]
2024-06-06 18:50:18 -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
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
rob gay
b7ecd11142 Remove and assert against registration/unregisteration calls of MetaSound graphs when cooking, and make all node unregistration calls synchronous when cooking
#rb helen.yang
#rnx
#tests AudioUnitTests, AudioQA -run=Cook -TargetPlatform=WindowsClient, rename asset, run Engine 'Audio' Automated Tests

[CL 30402526 by rob gay in ue5-main branch]
2023-12-19 15:55:04 -05:00
AdricEpic
473f754908 - Registration Race Condition Fixes (Attempt #2 w/ cook fixes)
- Part 1/2 fixing inconsistent file naming that is causing code query tool slowdowns (2/2 will be deprecating old MetasoundFrontendRegistries.h header path)
- Replace SoftObjectPaths with TopLevelAssetPaths for perf (ObjPaths do string copies all over, TopLevelAssetPaths are just two FNames)
#rb helen.yang
#rnx
[FYI] sondra.moyls
#tests AudioQA/EngineTest MetaSound Automated Tests, AudioTests, cook WindowsClient, submit and backout and then fix those problems
#jira UE-198785

[CL 30354102 by AdricEpic in ue5-main branch]
2023-12-15 13:21:12 -05:00
rob gay
65111a0774 Fix for cook errors, undo changelist 30246187
#rb helen.yang
#rnx

[CL 30255375 by rob gay in ue5-main branch]
2023-12-11 20:36:24 -05:00
rob gay
a876bffd23 - Registration Race Condition Fixes
- Part 1/2 fixing inconsistent file naming that is causing code query tool slowdowns
- Replace SoftObjectPaths with TopLevelAssetPaths for perf (ObjPaths do string copies all over, TopLevelAssetPaths are just two FNames)
#rb helen.yang
#rnx
#tests AudioQA MetaSound Automated Tests, AudioTests
#jira UE-198785

[CL 30246215 by rob gay in ue5-main branch]
2023-12-11 14:43:42 -05:00
phil popp
e631780063 Register metasound graphs asynchronously
#jira UE-185834, FORT-658630
#rb Rob.Gay, Helen.Yang

[CL 28149471 by phil popp in ue5-main branch]
2023-09-22 15:01:07 -04:00
phil popp
b478631318 [Backout] - CL28104009
[FYI] phil.popp
Original CL Desc
-----------------------------------------------------------------
Register metasound graphs asynchronously
#jira UE-185834
#rb Rob.Gay, Helen.Yang

[CL 28111209 by phil popp in ue5-main branch]
2023-09-21 18:24:25 -04:00
phil popp
adbad7a65f Register metasound graphs asynchronously
#jira UE-185834
#rb Rob.Gay, Helen.Yang

[CL 28104164 by phil popp in ue5-main branch]
2023-09-21 16:35:40 -04:00
rob gay
e2a68f998b Fix for crash in tests when MetaSoundBuilderSubsystem is not yet loaded
#rb trivial
#rnx

[CL 27968125 by rob gay in ue5-main branch]
2023-09-18 14:32:59 -04:00
rob gay
32c65daaa2 If at first you succeed, you potenitally forgot another place you failed the same way...
#rb trivial
#rnx

[CL 27907868 by rob gay in ue5-main branch]
2023-09-15 02:05:23 -04:00
rob gay
008b0741b2 Move MetasoundDocumentBuilders to cache-on-demand
- Invalidate subsystem registerd asset builder cache upon soft deprecated document access id creation
#rb phil.popp
#jira UE-194159
#rnx

[CL 27894768 by rob gay in ue5-main branch]
2023-09-14 16:54:36 -04:00
rob gay
0b5702d6e8 - Make UMetaSoundSource & UMetaSoundPatch the direct document manipulated object for subsystem builders
- Remove specialized Audition object in favor of directly using UMetaSoundSource for Source builders
#rb phil.popp
#jira UE-194159

[CL 27861100 by rob gay in ue5-main branch]
2023-09-13 20:11:49 -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
cff304e9da Interface Registry Tidying
1.) Move Bindings to own registry
2.) Nuke source files & left over cruft relating to archetypes
3.) Move deprecated interface registration next to respective interfaces for clarity
4.) Rename "FMetasoundFrontendInterfaceBindingConnections" to "FMetasoundFrontendInterfaceVertexBindings"
#rb phil.popp
#preflight 640f6852d778f889752a5bd1

[CL 24622079 by rob gay in ue5-main branch]
2023-03-13 17:23:05 -04:00
phil popp
07800695cd Replace use of FSoftObjectPath with UPROPERTY for dependent metasound assets.
#jira UE-156087
#rb rob.gay
#preflight 634841dffd22d1fbde5d7d73

[CL 22512918 by phil popp in ue5-main branch]
2022-10-13 17:38:11 -04:00
bryan sefcik
50d4fac9e0 Updated ../Engine/Plugins/... to inline gen.cpp files
Before:
3548 unity files
Total CPU Time: 47343.578125 s
Total time in Parallel executor: 494.60 seconds

After:
3445 unity files
Total CPU Time: 46044.671875 s
Total time in Parallel executor: 468.51 seconds

#jira
#preflight 63336159b20e73a098b7f24f

[CL 22218213 by bryan sefcik in ue5-main branch]
2022-09-28 01:06:15 -04:00
rob gay
31435d69a5 Fix bug with synchronization not being completed prior to validation for referenced MetaSound graphs
TLBSRA (Too long but still read anyway)
This was due to validation moving to recursive behavior but sync not to support bubbling up referenced errors/warnings in 5.1.  This resulted in missing members after interface transforms are applied and potentially hitting ensures in validation.
...
But wait there's more!!! Synchronization on tick is now more efficient as it doesn't attempt to resynchronize/validate references already synchronized/validated in prior pass in same frame due to referencing graph needing to sync

#rb helen.yang
#rnx
#jira UE-162586
#preflight 63223e6c29254beccbf06119

[CL 22019580 by rob gay in ue5-main branch]
2022-09-14 18:49:46 -04:00