Commit Graph

51 Commits

Author SHA1 Message Date
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
phil popp
c49dfb1c4d MetaSound: Add constructor inputs / outputs to frontend nodes
#rb Helen.Yang
#jira UE-151659, UE-151662
#p4v-preflight-copy 20381225
#preflight 6298ca1eb72f596b0fcb2f07

[CL 20469618 by phil popp in ue5-main branch]
2022-06-02 10:50:07 -04:00
phil popp
8efec09fb3 MetaSound: Add vertex access type to frontend document in order to support constructor pins.
#jira UE-151659
#preflight 628ff53e8c077c0d6628377b

[CL 20386454 by phil popp in ue5-main branch]
2022-05-26 17:59:27 -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
phil popp
9b1bc01a76 MetaSound FVertex simplification
- Simplifying FVertexInteface by removing VertexModel concept.
- Deprecating unwanted functions in interface.
- Simplifying storage mechanism in TVertexGroup
#jira UE-147353
#rb Rob.Gay
#preflight 62460dbde434babd8af9e93b

[CL 19578298 by phil popp in ue5-main branch]
2022-03-31 16:49:59 -04:00
rob gay
41a2a172dc Fix missing ability to order graph members
- Remove base template for node customizations now that it isn't required to be a template to enable intra-engine versioning (allows moving implementation of category customization to .cpp)
- Move redundant "Literal" property to parent UMetasoundEditorGraphMember
#rb helen.yang
#jira UE-121749
#rnx
#preflight 621d2e869a5676d19a3d50e9

#ROBOMERGE-AUTHOR: rob.gay
#ROBOMERGE-SOURCE: CL 19181623 in //UE5/Release-5.0/... via CL 19183646
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v921-19075845)

[CL 19206681 by rob gay in ue5-main branch]
2022-03-01 16:31:55 -05:00
maxwell hayes
f9c5000301 Naming gain inputs to clarify linear vs dB. (misinterpretation would appear broken)
#rb Rob.Gay
#jira UE-142956

#lockdown Nick.Whiting
#preflight 620d4027f427898d6b59d216

#ROBOMERGE-AUTHOR: maxwell.hayes
#ROBOMERGE-SOURCE: CL 19060751 in //UE5/Release-5.0/... via CL 19078565
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v921-19075845)

[CL 19121725 by maxwell hayes in ue5-main branch]
2022-02-24 14:42:58 -05:00
rob gay
4fddf8ef1c Fix MetaSound Tests Part 1
[REVIEW] helen.yang
#jira UE-142159
#preflight 620594bf6d374b98b0975fed

#ROBOMERGE-AUTHOR: rob.gay
#ROBOMERGE-SOURCE: CL 18944968 in //UE5/Release-5.0/... via CL 18945212 via CL 18946142
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v917-18934589)

[CL 18946288 by rob gay in ue5-main branch]
2022-02-10 18:36:26 -05:00