Commit Graph

30 Commits

Author SHA1 Message Date
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
ba836a04dc Round 3 w/registry validity check
- Fix for rename ensure regression from AssetManager refactor
- Add logging and track case when multiple assets are registered with the AssetManager with the same key for better debugging
- Add ability to force unregistration when request to finish building & utilize on destruction of MetaSound assets
#rb phil.popp
#jira UE-212969
#rnx
[FYI] sondra.moyls

[CL 33578794 by rob gay in ue5-main branch]
2024-05-10 12:40:21 -04:00
rob gay
a2af7ba4af [Backout] - CL33560215
[FYI] rob.gay
Original CL Desc
-----------------------------------------------------------------
Round 2 w/registry validity check
[Backout] - CL33559423
[FYI] rob.gay
Original CL Desc
-----------------------------------------------------------------
[Backout] - CL33551869
[FYI] Rob.Gay
Original CL Desc
-----------------------------------------------------------------
- Fix for rename ensure regression from AssetManager refactor
- Add logging and track case when multiple assets are registered with the AssetManager with the same key for better debugging
- Add ability to force unregistration when request to finish building & utilize on destruction of MetaSound assets
#rb phil.popp
#jira UE-212969
#rnx
[FYI] sondra.moyls

[CL 33563652 by rob gay in ue5-main branch]
2024-05-09 19:02:03 -04:00
rob gay
2f7f2bbc77 Round 2 w/registry validity check
[Backout] - CL33559423
[FYI] rob.gay
Original CL Desc
-----------------------------------------------------------------
[Backout] - CL33551869
[FYI] Rob.Gay
Original CL Desc
-----------------------------------------------------------------
- Fix for rename ensure regression from AssetManager refactor
- Add logging and track case when multiple assets are registered with the AssetManager with the same key for better debugging
- Add ability to force unregistration when request to finish building & utilize on destruction of MetaSound assets
#rb phil.popp
#jira UE-212969
#rnx
[FYI] sondra.moyls

[CL 33560224 by rob gay in ue5-main branch]
2024-05-09 17:24:19 -04:00
rob gay
1cd6fad836 [Backout] - CL33551869
[FYI] Rob.Gay
Original CL Desc
-----------------------------------------------------------------
- Fix for rename ensure regression from AssetManager refactor
- Add logging and track case when multiple assets are registered with the AssetManager with the same key for better debugging
- Add ability to force unregistration when request to finish building & utilize on destruction of MetaSound assets
#rb phil.popp
#jira UE-212969
#rnx
[FYI] sondra.moyls

[CL 33559463 by rob gay in ue5-main branch]
2024-05-09 16:58:48 -04:00
rob gay
fbad3b4fa2 - Fix for rename ensure regression from AssetManager refactor
- Add logging and track case when multiple assets are registered with the AssetManager with the same key for better debugging
- Add ability to force unregistration when request to finish building & utilize on destruction of MetaSound assets
#rb phil.popp
#jira UE-212969
#rnx
[FYI] sondra.moyls

[CL 33551886 by rob gay in ue5-main branch]
2024-05-09 13:47:58 -04:00
rob gay
c5b7fe17a3 Implicit constructor issue: round 2
#rb rob.gay
#rnx

[CL 33523610 by rob gay in ue5-main branch]
2024-05-08 15:19:15 -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
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
rob gay
8821f56db0 - Enable translating UObject to FMetaSoundAssetBase from Frontend module via AssetManager
- Expose input descriptor so it can be used with future template notes.
- Minor clean-up/nullptr protection in MetaSound Editor
[FYI] phil.popp
#rb helen.yang
#jira UE-194160

[CL 31070520 by rob gay in ue5-main branch]
2024-01-31 17:59:29 -05:00
sarah noonan
63b9103240 Delay MetaSoundSource calling RegisterGraphWithFrontend if the MetaSoundAssetManager has not been set yet - to facilitate server preloading assets before the manager has been set.
#rb Rob.Gay

[CL 30655975 by sarah noonan in ue5-main branch]
2024-01-17 07:07:19 -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
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
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
henrik karlsson
4a36cfe8ff Moved operator== to be hidden friend instead of put directly in global namespace
Moved GetTypeHash function to be hidden friend instead of put directly in global namespace.

Note that the function/operator needs to be fully inlined in the type or placed in the cpp. If the function is added as friend but then implemented outside the type then hidden friend optimization won't work.

This should improve compile time somewhat according to msvc devs.

#rb Steve.Robb
#preflight 6360b7052b5338aceb26471b

[CL 22889837 by henrik karlsson in ue5-main branch]
2022-11-01 15:50:27 -04:00
rob gay
18e887e937 [MetaSounds] Fix/add missing new MetaSound type icons/thumbnails as well as play/stop overlays. Support for showing/filtering presets in ContentBrowser
#rb helen.yang julien.stjean
[REVIEW] helen.yang
#jira UE-168050
#preflight 635314707261e565c497645f

[CL 22786984 by rob gay in ue5-main branch]
2022-10-26 15:28:04 -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
phil popp
cbdaf267bb Log warning when node connection is dropped during auto-update due to removed vertex.
#rnx
#jira UE-120726
#rb Rob.Gay
#lockdown Nick.Whiting
#preflight 621e6805257fd6e0992bb2ed

#ROBOMERGE-AUTHOR: phil.popp
#ROBOMERGE-SOURCE: CL 19204066 in //UE5/Release-5.0/... via CL 19209221
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v921-19075845)

[CL 19215316 by phil popp in ue5-main branch]
2022-03-01 21:25:04 -05:00
rob gay
6d4096c2af - Reduce MetaSounds loaded on Editor startup by moving additional MetaSound loads/registration to occur when MetaSoundEditor is loaded
- Add UX to communicate on first asset editor load that MetaSounds are still loading and class picker results may be incomplete
#rb phil.popp
#jira UE-134364
#rnx
#preflight 6202b588bf28c072cbf2faeb

#ROBOMERGE-AUTHOR: rob.gay
#ROBOMERGE-SOURCE: CL 18911432 in //UE5/Release-5.0/... via CL 18919339 via CL 18920527
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v916-18915374)

[CL 18920775 by rob gay in ue5-main branch]
2022-02-09 12:52:44 -05:00
rob gay
6887608d07 - Version MetaSound asset graph name FText being generated from file name & copied to MetaSound asset.
- Add missing user-defined fields to MetaSound graph options (ex. IsDeprecated, Keywords, etc.) and force update on transient style changeID (TODO: Probably would make more sense for Metadata FText to live on style struct and share that transient ChangeID, so that non-runtime changes to FText metadata wouldn't bump the change ID)
[CODEREVIEW] helen.yang
#jira UE-137696
#rnx
#preflight 61f870c0a6632a34f35e5e3c

#ROBOMERGE-AUTHOR: rob.gay
#ROBOMERGE-SOURCE: CL 18805501 in //UE5/Release-5.0/... via CL 18807964 via CL 18821755
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v908-18788545)

[CL 18822116 by rob gay in ue5-main branch]
2022-02-02 02:19:16 -05:00
rob gay
e00c7856fa Move any places where FText is copied to a MetaSound document to transient UProperties that are populated by external registries (i.e. the interface registry & the class registry)
#rb phil.popp
#rnx
#jira none
#preflight 61f1cc37c0033b39f89ee39c

#ROBOMERGE-AUTHOR: rob.gay
#ROBOMERGE-SOURCE: CL 18746974 in //UE5/Release-5.0/... via CL 18746984 via CL 18747190
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v903-18687472)

[CL 18747199 by rob gay in ue5-main branch]
2022-01-26 18:11:52 -05:00
rob gay
8a5b4f2ccb - Fix for not clearing MetaSound document dependency registry cache data when loading in loc builds
- Clean-up duplicate logic not needed as covered in PreSave template function
#rb trivial
#jira none
#rnx
#preflight 61ea5f91c92021e535b0ae4e

#ROBOMERGE-AUTHOR: rob.gay
#ROBOMERGE-SOURCE: CL 18691587 in //UE5/Release-5.0/... via CL 18691946 via CL 18692123
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v903-18687472)

[CL 18692330 by rob gay in ue5-main branch]
2022-01-21 13:34:39 -05:00