Commit Graph

59 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
92e413738d Fix for Clang compiler warning. Minor feedback for const declaration of default page ID.
#rnx
#rb rob.gay

[CL 34485679 by rob gay in ue5-main branch]
2024-06-18 19:17:25 -04:00
AdricEpic
0976464d97 #1 Pages Checkpoint: Update BuilderAPI, associated delegates to support providing Pages
#rb helen.yang, phil.popp
#rnx
#jira UE-194160

[CL 34477958 by AdricEpic in ue5-main branch]
2024-06-18 16:47:21 -04:00
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
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
7dead04def Scaffolding for custom MetaSound comment nodes that serialize to Frontend Document as initial part of making ed graph data transient
#jira UE-194160
#rb helen.yang
#rnx

[CL 31060334 by rob gay in ue5-main branch]
2024-01-31 15:02:39 -05:00
phil popp
b3db59ff1d Fix remaining failures in metasound automated node tests
#rb Rob.Gay
#jira UE-198649

[CL 30688714 by phil popp in ue5-main branch]
2024-01-18 12:47:05 -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
rob gay
a217018a86 - Make FMetasoundFrontendClassName GetTypeHash performant by removing string copy/format
- Add InvalidFrontendClassName to test validity against instance/if class name has been set
- Minor clean-up
#rb helen.yang
[FYI] phil.popp
#rnx

[CL 28629702 by rob gay in ue5-main branch]
2023-10-10 14:11:01 -04:00
phil popp
1c5f2a8cdd Update caching of input data to use TSortedMap
#jira UE-195472
#rb Rob.Gay

[CL 27886540 by phil popp in ue5-main branch]
2023-09-14 13:49:21 -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
4d136215c5 Move MetaSound AutoUpdate and PreprocessDocument from runtime to cook using deterministic ID generation
- remove old cvars for editor/runtime deterministic ID generation

#jira UE-179993
#rb phil.popp

[CL 27242603 by helen yang in ue5-main branch]
2023-08-21 12:25:01 -04:00
helen yang
3ddcc821aa Enable MetaSound deterministic id generation at runtime
#rb phil.popp
#jira UE-189686
#rnx

[CL 26547630 by helen yang in ue5-main branch]
2023-07-24 12:45:51 -04:00
rob gay
efe5d3931c Add missing BPReadWrite mark-up to MetaSoundClassName so nodes can be added via builder in BP & LexToString for better error logging of MetaSound types to be used in subsequent CL for BP debugging. Minor formatting fix-ups.
#rnx
#rb trivial
#rnx

[CL 26158067 by rob gay in ue5-main branch]
2023-06-21 15:14:33 -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
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
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
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
7c89cca430 Fix missing rerouted implicit accessor behavior causing various bugs with constructor pins
#rb helen.yang
#rnx
#jira UE-163090
#preflight 6320d96829254beccb80dc36

[CL 21997851 by rob gay in ue5-main branch]
2022-09-13 21:51:22 -04:00
Rob Gay
25826b9069 Summer Cleaning
- Rename MetasoundArchetype Source file to MetasoundFrontendInterface
- Move MetaSound interface files to subdirectory.
- Break out document versioning transforms to own impl/header
#rb todo
#rnx
#jira none
#preflight 62fed263200ff87e07d77340

[CL 21458865 by Rob Gay in ue5-main branch]
2022-08-19 12:14:31 -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
2f19544e46 Increased audio LLM tag coverage
#jira UE-148592
#rb  Helen.Yang
#preflight 62cc51f31961b487b39e9478

[CL 21042573 by phil popp in ue5-main branch]
2022-07-11 12:49:10 -04:00