Commit Graph

42 Commits

Author SHA1 Message Date
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
aaron mcleran
0ffa11ba73 Adding new interface for one-shots, upgrading old metasounds to use new interface if they hooked up the on-finished trigger.
Great test-case for interfaces and our upgrade code paths.

#rb Rob.Gay
#jira UE-137708
#preflight 61ba7d64753a9d8c87c2a038

#ROBOMERGE-AUTHOR: aaron.mcleran
#ROBOMERGE-SOURCE: CL 18472322 in //UE5/Release-5.0/... via CL 18473370
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v899-18417669)

[CL 18473402 by aaron mcleran in ue5-release-engine-test branch]
2021-12-15 23:11:10 -05:00
rob gay
3bdc09e2a5 Backout out backed out changelist 18369256 (includes AudioComponent redirect fix)
-----------------------------------------------------------------
MetaSounds Interfaces Checkpoint 2:
- Version up source archetypes to become two interfaces: channel interfaces (mono/stereo) & base source namespace
- Clean-up Interface panel to support namespacing better
- Fix bugs with assuming interfaces are always and the only base namespace members
- Allow namespacing for any arbitrary interface member
- Add lock icon to clarify what interface members cannot be modified individually (i.e. cannot add, remove, or rename them as they are interface members)
- Organize members alphabetically
#jira UE-135000
#rnx
#rb phil.popp
#preflight 61a7d1079c77d610079303ec
#p4v-cherrypick 18344347

#ROBOMERGE-AUTHOR: rob.gay
#ROBOMERGE-SOURCE: CL 18413245 via CL 18413381 via CL 18413401 via CL 18434953 via CL 18437303
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v897-18405271)

[CL 18437360 by rob gay in ue5-release-engine-test branch]
2021-12-10 20:37:31 -05:00
aurel cordonnier
3e68a3edef [Backout] - CL18345215
[FYI] rob.gay
Original CL Desc
-----------------------------------------------------------------
MetaSounds Interfaces Checkpoint 2:
- Version up source archetypes to become two interfaces: channel interfaces (mono/stereo) & base source namespace
- Clean-up Interface panel to support namespacing better
- Fix bugs with assuming interfaces are always and the only base namespace members
- Allow namespacing for any arbitrary interface member
- Add lock icon to clarify what interface members cannot be modified individually (i.e. cannot add, remove, or rename them as they are interface members)
- Organize members alphabetically
#jira UE-135000
#rnx
#rb phil.popp
#preflight 61a7d1079c77d610079303ec
#p4v-cherrypick 18344347

#ROBOMERGE-AUTHOR: aurel.cordonnier
#ROBOMERGE-SOURCE: CL 18369256 via CL 18369273 via CL 18369290 via CL 18434224 via CL 18435611
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v897-18405271)

[CL 18436532 by aurel cordonnier in ue5-release-engine-test branch]
2021-12-10 19:13:22 -05:00
rob gay
d2e6910760 MetaSounds Interfaces Checkpoint 2:
- Version up source archetypes to become two interfaces: channel interfaces (mono/stereo) & base source namespace
- Clean-up Interface panel to support namespacing better
- Fix bugs with assuming interfaces are always and the only base namespace members
- Allow namespacing for any arbitrary interface member
- Add lock icon to clarify what interface members cannot be modified individually (i.e. cannot add, remove, or rename them as they are interface members)
- Organize members alphabetically
#jira UE-135000
#rnx
#rb phil.popp
#preflight 61a7d1079c77d610079303ec

#ROBOMERGE-AUTHOR: rob.gay
#ROBOMERGE-SOURCE: CL 18344347 in //UE5/Release-5.0/... via CL 18344412
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)

[CL 18344446 by rob gay in ue5-release-engine-test branch]
2021-12-01 15:59:03 -05:00
aurel cordonnier
fc542f6cfd Merge from Release-Engine-Staging @ 18081189 to Release-Engine-Test
This represents UE4/Main @18073326, Release-5.0 @18081140 and Dev-PerfTest @18045971

[CL 18081471 by aurel cordonnier in ue5-release-engine-test branch]
2021-11-07 23:43:01 -05:00
phil popp
294fe87fef Cherry pick from CL 17538469
Speedup initial play sound calls to MetaSound objects
#rb Ryan.Mangin, Rob.Gay, Aaron.McLeran
#preflight 6143700a568b3a000120cd30

#ROBOMERGE-AUTHOR: phil.popp
#ROBOMERGE-SOURCE: CL 17542606 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v870-17433530)

[CL 17542617 by phil popp in ue5-release-engine-test branch]
2021-09-16 14:46:43 -04:00
rob gay
38332680ea Move FString/FText VertexName identifers to FNames. Convention is as follows:
- FGuid IDs are used to identify unique verticies within an entire graph (currently may be duplicated if graph is duplicated).
- FNames are used to be readible vertex identifiers that are only unique within a node's API.
- FText is only for ***OPTIONAL*** DisplayNames that can be provided as a more descriptive, readible descriptor of a given vertex (But are not necessarily unique). Currently disabled until loc tool on FText property in MetaSoundDetailsCustomization is properly displayed.
#rb phil.popp
#jira UE-123982
#preflight 613f6ff892b32b00016cf188

#ROBOMERGE-AUTHOR: rob.gay
#ROBOMERGE-SOURCE: CL 17494445 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v870-17433530)

[CL 17494469 by rob gay in ue5-release-engine-test branch]
2021-09-13 14:14:37 -04:00
halfdan ingvarsson
fed62f1274 Fix a use-after-destruct on stack found by address sanitizer.
#rb phil.popp
#rnx

#ROBOMERGE-SOURCE: CL 17408875 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v865-17346139)

[CL 17408891 by halfdan ingvarsson in ue5-release-engine-test branch]
2021-09-02 16:44:27 -04:00
phil popp
68c5594b34 Allow async metasound generator building W/O deadlocks
#rb Rob.Gay
#preflight 6123b0decc11eb000183c9aa

#ROBOMERGE-SOURCE: CL 17267462 via CL 17273282
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v858-17259218)

[CL 17274343 by phil popp in ue5-release-engine-test branch]
2021-08-23 15:24:06 -04:00
phil popp
3662ae646a Disable asyn generation of metasound
#rb rob.gay
#preflight skip

#ROBOMERGE-SOURCE: CL 17235966 via CL 17235974
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v855-17104924)

[CL 17235982 by phil popp in ue5-release-engine-test branch]
2021-08-19 12:53:03 -04:00
phil popp
bdd5543216 Build MetaSound instance on async task
#rb alfaroh.corneyiii
#preflight 611d3a0476f1fd00014344df

#ROBOMERGE-SOURCE: CL 17218275 via CL 17218279
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v855-17104924)

[CL 17218289 by phil popp in ue5-release-engine-test branch]
2021-08-18 13:43:28 -04:00
phil popp
158904adf9 Adding cpuprofile tracing to Metadsound and Audio Mixer
#rb Aaron.McLeran, Rob.Gay
#preflight 61141ad90ccb840001f234d0

#ROBOMERGE-SOURCE: CL 17140720 via CL 17140728
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v855-17104924)

[CL 17140743 by phil popp in ue5-release-engine-test branch]
2021-08-11 15:22:01 -04:00
phil popp
e03e3478e4 Remove dependency on metasound search engine for injecting BP API
- Added MetasoundFrontendInjectReceiveNodes.h/cpp which removes dependency on FMetasoundAssetBase::CopyDocumentAndInjectReceiveNodes.
- Significant speed improvments on MetaSound "Play Sound"
#jira UE-116999
#rb Rob.Gay
#preflight 6101af05431c780001597ec0

#ROBOMERGE-SOURCE: CL 16986573 via CL 16987603
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v838-16927207)

[CL 16987703 by phil popp in ue5-release-engine-test branch]
2021-07-28 17:12:57 -04:00
aaron mcleran
a02b6321da Fixing metasounds cutting off too early when told they are done.
#rb Rob.gay
#jira UE-119444
[FYI] Sondra.Moyls

#ROBOMERGE-SOURCE: CL 16827752 via CL 16827756
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v836-16769935)

[CL 16827763 by aaron mcleran in ue5-release-engine-test branch]
2021-07-12 13:37:05 -04:00
phil popp
9d97f55050 Creating metasound archetype registry and upgrade path
#rb Rob.Gay

#ROBOMERGE-SOURCE: CL 16766481 via CL 16766487
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v835-16672529)

[CL 16766497 by phil popp in ue5-release-engine-test branch]
2021-06-23 20:08:21 -04:00
rob gay
e26ac0345b - Migrate MetaSound InputLiterals to DefaultLiterals housed on FrontendNodes
- Add FrontendGraphBuilder support for generating VariableNodes for DefaultLiterals if no connection is provided on External/Output nodes
- Move node names to be guids (they're never seen by the user and this will be easier to migrate later)
- Fix DisplayName logic to be unique against one another SEPARATELY from node name logic
- Fix for MetaSounds not compiling if trigger outputs do not have input connected
- MetaSound Document Transform Support
- Fix for for MetaSound Generators not stopping source if failed to create generator due to build errors
#rb phil.popp
#jira UE-112951
#jira UE-116172
#jira UE-116174
#jira UE-116176
#jira UE-116178
#preflight 60b11e7b7e4e6a0001b81c21
#preflight 60b1292d072a1d000164b470

#ROBOMERGE-SOURCE: CL 16502735 in //UE5/Private-Frosty/...
#ROBOMERGE-BOT: STARSHIP (Private-Frosty -> Main) (v826-16501804)

[CL 16502750 by rob gay in ue5-main branch]
2021-05-28 14:09:45 -04:00
phil popp
841cfbdd3e Cleanup TAccessPtr
- Moved TAccessPtr<> member accessors to their own implementation file.
- Implemented specific derived classes for TAccessPtr<> to metasound frontend document sturctures.
- Fixed broken unit test
#jira UEAU-780
#rb Rob.Gay
#preflight 6099b8030ab4b200016c89f7

[CL 16259814 by phil popp in ue5-main branch]
2021-05-10 19:52:56 -04:00
Rob Gay
7a7793e767 Deprecate more AlignedFloatBuffer callsites and use FAlignedFloatBuffer
#rb trivial
#rnx
#preflight 60918ea390631e0001d41516

[CL 16198391 by Rob Gay in ue5-main branch]
2021-05-04 16:05:46 -04:00
aaron mcleran
777b4411a5 Making our modules optimized
#jira UE-112724
#rb none
#preflight 6067824d918c88000118e6d9

#ROBOMERGE-SOURCE: CL 15905854 in //UE5/Release-5.0-EarlyAccess/...
#ROBOMERGE-BOT: STARSHIP (Release-5.0-EarlyAccess -> Main) (v786-15839533)

[CL 15907362 by aaron mcleran in ue5-main branch]
2021-04-02 20:38:21 -04:00
rob gay
080ec409b3 More MetaSound UX Clean-up
- LogTemp & LogMetasound to LogMetaSound
- Hide Import/Export UI options (to/from Json) for EA from editor as its halfbaked
- Reorder node right-click context menu entries to follow suit with BP
- Add new dedicated metasound icon
#rb trivial
#jira none
#preflight 6066b882e0e94d0001afa196

#ROBOMERGE-SOURCE: CL 15899641 in //UE5/Release-5.0-EarlyAccess/...
#ROBOMERGE-BOT: STARSHIP (Release-5.0-EarlyAccess -> Main) (v786-15839533)

[CL 15899642 by rob gay in ue5-main branch]
2021-04-02 03:03:27 -04:00
phil popp
d4af456a9c Metasound Frontend Perf Tuneup
- Added frontend search engine to cache frontend queries
- Allowing frontend queries to be updated in place.
- Tracking node registration transactions to allow incremental runtime checks of newly registered nodes.
- Create public RegistryContainer interface and hide implementation to allow for further optimizations without changing public headers
#jira UEAU-749
#rb Max.Hayes, Jimmy.Smith
#preflight 606399a6e05c4e0001a0d173

#ROBOMERGE-SOURCE: CL 15868737 in //UE5/Release-5.0-EarlyAccess/...
#ROBOMERGE-BOT: STARSHIP (Release-5.0-EarlyAccess -> Main) (v786-15839533)

[CL 15868744 by phil popp in ue5-main branch]
2021-03-30 18:22:10 -04:00
aaron mcleran
6a68cb1047 Making metasound factory to create a new metasound instance asynchronous
#jira none
#rb Phil.Popp
[FYI] Dan.Reynolds, Sondra.Moyls
#preflight 605a55789e634b00015ff8db

#ROBOMERGE-SOURCE: CL 15787006 in //UE5/Release-5.0-EarlyAccess/...
#ROBOMERGE-BOT: STARSHIP (Release-5.0-EarlyAccess -> Main) (v783-15756269)

[CL 15790767 by aaron mcleran in ue5-main branch]
2021-03-23 22:43:04 -04:00
rob gay
6661b718b6 Add Trigger Simulation
- Add ExecutableDataType statics required for updating and ownership of triggers on Receive and Input nodes to avoid triggers spamming when set from boolean literals (Could potentially be useful for AudioBuffer inputs transmission).
- Misc clean-up
#jira UEAU-740
#rb phil.popp
#preflight 60596c28216649000137e147

#ROBOMERGE-SOURCE: CL 15773055 in //UE5/Release-5.0-EarlyAccess/...
#ROBOMERGE-BOT: STARSHIP (Release-5.0-EarlyAccess -> Main) (v783-15756269)

[CL 15785846 by rob gay in ue5-main branch]
2021-03-23 17:55:31 -04:00