Commit Graph

27 Commits

Author SHA1 Message Date
phil popp
33b7b2a911 MetaSound Frontend Speedups
- Cached array indices for TAccessPtr point to an object in an array
- Reduced number of call sites to TAccessPtr::Get()
- Avoid creating registry keys when possible.
#jira UE-116999
#rb Rob.Gay


#ROBOMERGE-SOURCE: CL 16830765
#ROBOMERGE-BOT: (v836-16769935)

[CL 16830791 by phil popp in ue5-main branch]
2021-07-12 16:12:36 -04:00
phil popp
4c942021ae Creating metasound archetype registry and upgrade path
#rb Rob.Gay


#ROBOMERGE-SOURCE: CL 16766481
#ROBOMERGE-BOT: (v835-16672529)

[CL 16766487 by phil popp in ue5-main branch]
2021-06-23 20:07:53 -04:00
phil popp
23b0cd8280 Fixing MetaSound use of FNodeClassInfo and FNodeRegsitryKey
#rb Rob.Gay
#preflight 60c7b1c5f7cffb0001188650


#ROBOMERGE-SOURCE: CL 16664021
#ROBOMERGE-BOT: (v834-16658389)

[CL 16664038 by phil popp in ue5-main branch]
2021-06-14 16:45:51 -04:00
rob gay
0e4f7a7c51 MetaSound UI/UX Composition/Preset Scaffolding
- Revive UMetaSound Asset type
- Revive MS Output generation
- Fix copy pasta'ed type name so MetaSound Source shows up properly in editor
- Clean-up to dynamic doc version reporting if required (show the new version number in log)
- Add versioning to update the RootGraphClass name & add DisplayName

MetaSound Registry Scaffolding Part 1 (From Phil Popp)

#rb phil.popp
#jira UE-117108
#jira UE-117109
#jira UE-117110
#preflight 60bf11780c76f90001db5f5f


#ROBOMERGE-SOURCE: CL 16587155
#ROBOMERGE-BOT: (v828-16531559)

[CL 16587204 by rob gay in ue5-main branch]
2021-06-08 10:52:31 -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
ab25da7ed8 MetaSound Graph Core Subgraph
#rb Rob.Gay
#jira UEAU-780
[FYI] Dan.Reynolds
#preflight 60a6af8629bb870001c7b53e

#ROBOMERGE-SOURCE: CL 16408345 in //UE5/Private-Frosty/...
#ROBOMERGE-BOT: STARSHIP (Private-Frosty -> Main) (v804-16311228)

[CL 16412437 by phil popp in ue5-main branch]
2021-05-20 19:33:21 -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
12abad8cfb Metasound Class Validation & Versioning First Pass
#rb phil.popp
#jira UE-113416
#jira UE-113417
#jira UE-113419
#jira UEAU-781
#preflight 609065b7c4babe0001086600

[CL 16187219 by Rob Gay in ue5-main branch]
2021-05-03 17:52:04 -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
rob gay
33cd41df51 Pipe through Metasound Node Advanced Display markup
- Move descriptions to new FDataVertexMetadata struct along with new bIsAdvancedDisplay bool
- Add convenience getters for FMetasoundFrontendVertexMetadata (SO META!) that translates from FDataVertexMetadata on Controllers
#rb phil.popp
[FYI] aaron.mcleran
#preflight 6064c11c254dca00015289e5

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

[CL 15880100 by rob gay in ue5-main branch]
2021-03-31 15:34:29 -04:00
rob gay
1e147aadf3 Metasound UI/UX Updates
- Input/Output Reference nodes (Allows more than one input node per input, & hiding output nodes if not desired)
- Implement hotswapping input/output types
- Update MS Graph context menu to dynamically add actions for available inputs/outputs
- Add copy/paste for input/output nodes (but disallow from other graphs)
- Various utility functions for frontend for iterating node inputs/outputs
- Consolidation of GetDisplayName/GetDescription node logic into Frontend
- 1st pass on fixing up sync code to support input/output ed reference nodes
- Migrate edgraph input literals to new UObject class to allow for input references & hotswapping type
#jira UEAU-740
#rb jimmy.smith
#preflight 6053e0c61965b60001192560

#ROBOMERGE-SOURCE: CL 15745119 in //UE5/Release-5.0-EarlyAccess/...
#ROBOMERGE-BOT: STARSHIP (Release-5.0-EarlyAccess -> Main) (v781-15675533)

[CL 15750030 by rob gay in ue5-main branch]
2021-03-19 15:10:57 -04:00
phil popp
69487dd719 Metasound live parameter updates
#jira UEAU-709
#rb Rob.Gay
#preflight 604a607bd9f7490001e8df79

#ROBOMERGE-SOURCE: CL 15679701 in //UE5/Release-5.0-EarlyAccess/...
#ROBOMERGE-BOT: STARSHIP (Release-5.0-EarlyAccess -> Main) (v781-15675533)

[CL 15683578 by phil popp in ue5-main branch]
2021-03-11 21:12:31 -04:00
phil popp
5a16772fee Audio format output node specialization
#rb Rob.Gay
#jira UEAU-700

#ROBOMERGE-SOURCE: CL 15585877 in //UE5/Release-5.0-EarlyAccess/...
#ROBOMERGE-BOT: STARSHIP (Release-5.0-EarlyAccess -> Main) (v777-15581079)

[CL 15585909 by phil popp in ue5-main branch]
2021-03-03 15:00:53 -04:00
rob gay
328f64f40b - Fix bug/crashes with undo desync after updating input literals from graph input node
- Fix minor bug with MS doc sync incorrectly marking package dirty
- Add MS sync when undo'ing transaction involving MS as a safeguard to ensure graph/document parity is preserved (and sync code is maintained)
- Make Metasound version history visible but not editable by end-user

#ROBOMERGE-SOURCE: CL 15577261 in //UE5/Release-5.0-EarlyAccess/...
#ROBOMERGE-BOT: STARSHIP (Release-5.0-EarlyAccess -> Main) (v771-15082668)

[CL 15577265 by rob gay in ue5-main branch]
2021-03-02 21:39:09 -04:00
rob gay
848adea741 Fix pin ordering to use that which is provided by the vertex interface in the node definition
#ROBOMERGE-SOURCE: CL 15524753 in //UE5/Release-5.0-EarlyAccess/...
#ROBOMERGE-BOT: STARSHIP (Release-5.0-EarlyAccess -> Main) (v771-15082668)

[CL 15524783 by rob gay in ue5-main branch]
2021-02-24 21:34:19 -04:00
phil popp
b7afa3ba7d MetaSounds PointIDs to VertexID
#jira UEAU-702
#rb Jimmy.Smith

#ROBOMERGE-SOURCE: CL 15522713 in //UE5/Release-5.0-EarlyAccess/...
#ROBOMERGE-BOT: STARSHIP (Release-5.0-EarlyAccess -> Main) (v771-15082668)

[CL 15522756 by phil popp in ue5-main branch]
2021-02-24 18:37:19 -04:00
rob gay
a1f87ce451 Checkpoint: Metasound Node Inspector Panel & Array Support
#rb phil.popp
#jira UEAU-710

#ROBOMERGE-SOURCE: CL 15511803 in //UE5/Release-5.0-EarlyAccess/...
#ROBOMERGE-BOT: STARSHIP (Release-5.0-EarlyAccess -> Main) (v771-15082668)

[CL 15511819 by rob gay in ue5-main branch]
2021-02-24 02:02:03 -04:00
phil popp
d0a2a1bac9 Frontend Array Support
#rb Rob.Gay
#jira UEAU-655

#ROBOMERGE-SOURCE: CL 15383605 in //UE5/Release-5.0-EarlyAccess/...
#ROBOMERGE-BOT: STARSHIP (Release-5.0-EarlyAccess -> Main) (v771-15082668)

[CL 15384147 by phil popp in ue5-main branch]
2021-02-10 21:43:31 -04:00
phil popp
0c59171594 CIS fix missing file in submit
#rb trivial
#jira none

#ROBOMERGE-SOURCE: CL 15322160 in //UE5/Release-5.0-EarlyAccess/...
#ROBOMERGE-BOT: STARSHIP (Release-5.0-EarlyAccess -> Main) (v771-15082668)

[CL 15322182 by phil popp in ue5-main branch]
2021-02-04 16:31:46 -04:00
Rob Gay
3a91f64f60 Add ability to define default literals on input vertex in Metasound core
- Update default values for standard nodes to sensible values
#rb phil.popp
#jira UEAU-687
#fyi jimmy.smith

[CL 15299246 by Rob Gay in ue5-main branch]
2021-02-03 14:36:36 -04:00
phil popp
86732c1ec4 Update Metasound Graph Core Metadata
- Rename FNodeInfo to FNodeClassMetadata
- Add FGuid to Metasound node instances
- Metasound node class names are now Namespace.Name.Variant
- Add displayname for Metasound node classes.
#jira UE-107332
#jira UEAU-660
#rb Rob.Gay

[CL 15253779 by phil popp in ue5-main branch]
2021-01-28 19:02:51 -04:00
Rob Gay
a7281c3c12 Literal Input Nodes
GainMultiply fix-ups (fade fast to avoid stair stepping & missing input declaration)
- Various EdGraphBuilder clean-up
#rb phil.popp
#jira UEAU-638

[CL 15172255 by Rob Gay in ue5-main branch]
2021-01-23 12:59:01 -04:00
phil popp
c2c509e3fd Metasound BP interface
- Adding IAudioInstanceTransmitter interface to Audio extensions
- Adding IAudioInstanceTransmitter to FActiveSound
- Renaming functions with "Archetype" to "MetasoundArchetype" to avoid conflict with UOBject archetype.
- Adding transmittable info to data type registration
- Adding default input pin to receive node.
- Adding FMetasoundInstanceTransmitter for communicating to single metasound source instance.
#rb Aaron.McLeran, Rob.Gay
#jira UEAU-618

[CL 15162371 by phil popp in ue5-main branch]
2021-01-22 03:05:22 -04:00
phil popp
1e2c6be26a Metasound Document GUID and Document Accessor
#rb Rob.Gay
#jira UEAU-618

[CL 15148667 by phil popp in ue5-main branch]
2021-01-20 17:26:40 -04:00
Rob Gay
b2a4405eb9 Add more fine grain pin Metasound specialization/colorization
- Stub in icons & node bodies
- Add SMetasoundNode & basic display option metadata
- Disallow multiple inputs/outputs with the same display name
- Various UX fixes
#rb aaron.mcleran

[CL 15142814 by Rob Gay in ue5-main branch]
2021-01-20 00:42:47 -04:00