Commit Graph

37 Commits

Author SHA1 Message Date
alan abram
f64052f200 Metasound changes to reduce the number of FNames generated.
Previously the FNodeRegistryKey::ToString() function was the only user of the "FullName" FName and was used for logging. We now build these inline when used as not to pollute the FNamePool.
#rb emanuel.masciarelli, Rob.Gay

[CL 34032750 by alan abram in ue5-main branch]
2024-05-31 11:06:37 -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
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
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
524d0f85fe Refactor reroute templating in preparation of new templates coming in subsequent changes (i.e. inputs, maybe more node config templates, etc.)
#rb phil.popp
#jira UE-194159
#tests AudioUnitTests, engine tests, tested adding, removing, and auditioning reroutes

[CL 32104370 by rob gay in ue5-main branch]
2024-03-07 17:53:25 -05:00
rob gay
94048f43ca - Make FNodeRegistryKey an actual struct as opposed to a string alias
- Avoids string format/copies/conversions in most cases where its just used as a key
- Deprecate NodeRegistryKey namespace calls
#rb phil.popp
#rb helen.yang

[CL 28727626 by rob gay in ue5-main branch]
2023-10-12 16:37:45 -04:00
phil popp
d87c00cbb1 Fix for failed assert in lowlevel metasound tests
#jira UE-196022

[CL 28060807 by phil popp in ue5-main branch]
2023-09-20 18:15:38 -04:00
phil popp
f25c1c60d4 Use MetaSound proxy cache to build metasounds
#jira UE-185834
#rb Helen.Yang

[CL 27841603 by phil popp in ue5-main branch]
2023-09-13 14:21:35 -04:00
helen yang
07268d51d2 MetaSound deterministic id generation
- Deterministic generation of ids for various FGuids used in MetaSound documents so that Autoupdate can be moved from runtime to cook in the future while maintaining cook determinism
- cvar for enabling in editor au.MetaSound.EnableDeterministicIDGenerationInEditorCVar

#jira UE-176939
#jira UE-176940
#rb phil.popp

[CL 26126897 by helen yang in ue5-main branch]
2023-06-20 13:12:39 -04:00
phil popp
c05b7d4397 Fix build for editoronly data in program using metasound fronend.
#jira UE-187855
#rnx
#rb Rob.Gay

[CL 26028177 by phil popp in ue5-main branch]
2023-06-15 17:57:06 -04:00
rob gay
dc986cb6b8 - Minor bug w/setting vertex ID instead of node ID when member modify context is updated
- Misc clean-up
#rb trivial
#rnx
#preflight 645943abfd4b8f4e0dc97fbb

[CL 25380538 by rob gay in ue5-main branch]
2023-05-08 19:08:22 -04:00
rob gay
84771db13f Remove input receive node injection by implementing receive implementation within non-ctor input node operator
#rb phil.popp
[REVIEW] phil.popp
#rnx
#jira UE-166569
#preflight 63445c0f360ee7edea15afdb

[CL 22437484 by rob gay in ue5-main branch]
2022-10-10 15:44:28 -04:00
rob gay
9dbc0c6693 [MetaSounds] Editor Graph Syncronization Upgrade
- Move synchronize/details panel flag to more generic ModifyContext
- Do not use MarkAsGarbage as means of enforcing not to show object in details panel to avoid leaving objects in invalid state if undo called. Check ed graph membership instead
- Get rid of leaky namechanged delegates
    - Allows for migration to isolated synchronization in the future
    - Removes conflation of having to synchronize and update views when modifying frontend document
    - Decouples concept of a specific view to update from generic frontend graph modifications
#rb helen.yang
#jira UE-151448
#preflight 632b7afdc7791417aa44126f

[CL 22142063 by rob gay in ue5-main branch]
2022-09-22 15:02:24 -04:00
rob gay
2c38378951 - Fix doubleclick to add connected reroute not capturing full transaction
- Fix pasted reroute ed nodes not generating reroute template frontend node
- Fix for "promote to" transactions not capturing graph changes
#rb helen.yang
#jira UE-162560
#jira UE-161233
#jira UE-147944
#rnx
#preflight 631fac6a575e11cd2a6ffe70

[CL 21985212 by rob gay in ue5-main branch]
2022-09-13 12:30:44 -04:00
Rob Gay
87f810eadf MetaSound Template nodes
#rb phil.popp
#jira UE-160476
#preflight 62f3f49df75a2a539c8b4973

[CL 21322540 by Rob Gay in ue5-main branch]
2022-08-10 14:18:10 -04:00
helen yang
abcf114f57 MetaSound Constructor pin editor-frontend integration checkpoint
- Both inputs and outputs can be constructor vertices, not just inputs
- Enforce connection and data type constraints for access types
- Prevent default value constructor value from being changed while playing
- Added cvar (default disabled) for enabling constructor pin option in editor

#jira UE-151661
#rb phil.popp
#preflight 62d59f4bf156340c79cfcbf5

[CL 21152841 by helen yang in ue5-main branch]
2022-07-18 17:14:25 -04:00
phil popp
446b533eba [MetaSound] enforce new vertices to have valid IDs.
#jira none
#rb Rob.Gay
#preflight 62c5e0a1756222ced48b582f

[CL 20971641 by phil popp in ue5-main branch]
2022-07-06 15:31:05 -04:00
phil popp
c75259278f CIS fix for audio low level test failure.
#jira UE-153192
#rb trivial
#rnx
#preflight 62879fdc9b764703c301909c

[CL 20293932 by phil popp in ue5-main branch]
2022-05-20 10:11:42 -04:00
phil popp
3b6d5fb578 Add metasound constructor vertices
Integrate vertex data into graph builder.
#jira UE-150143, UE-149184
#rb Rob.Gay
#preflight 628677e9614041edb70a77d9

[CL 20284114 by phil popp in ue5-main branch]
2022-05-19 14:18:38 -04:00
Rob Gay
f2f944d64f MetaSound Analyzer Frontend/Graph Core Checkpoint
- Add ability to track all internal data references to a core graph
- Add AnalyzerRegistry & first pass at value/envelope analyzers
- Add support for enabling analyzing from MetaSound Generator
- Add ability for tracking colorized bounds for edges as literal-color array
#rb phil.popp
#jira UE-147027
#jira UE-147028
#jira UE-147026
#preflight 627acbae10766ef8c112264c

[CL 20129340 by Rob Gay in ue5-main branch]
2022-05-10 16:51:39 -04:00
phil popp
6eae6a1e3f [Metasound] Move various members to WITH_EDITORONLY_DATA to save on non-editor memory.
#jira UE-147633
#rb Rob.Gay
#preflight 6270074aad00dced62d0f685

[CL 20010513 by phil popp in ue5-main branch]
2022-05-02 12:35:54 -04:00
helen yang
803e3e44b4 Use loc text for MetaSound node vertex names (Part 2)
- pass on MetaSound nodes to use METASOUND_PARAM() and related macros for information about node vertices that should be localized
- fix typos, loc key collisions, and update audio unit test call sites

#jira UE-144518
#jira UE-145530
#rb aaron.mcleran
#preflight 62335f6ce12e0da4a52e74ba
#robomerge FNNC

[CL 19423048 by helen yang in ue5-main branch]
2022-03-17 13:14:50 -04:00
phil popp
baf70eb1c0 Fix for ensure on corrupt MetaSound asset in Lyra
#rnx
#jira UE-144618
#rb Rob.Gay
#lockdown Nick.Whiting
#preflight 622167b9aa27915dd675a04a

#ROBOMERGE-AUTHOR: phil.popp
#ROBOMERGE-SOURCE: CL 19259554 in //UE5/Release-5.0/... via CL 19260273
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v924-19243027)

[CL 19264034 by phil popp in ue5-main branch]
2022-03-04 04:25:00 -05:00