FDataTypeRegistry::GetDataTypeInfo walks up the class hierarchy searching for a registered class.
Adds FDataTypeRegistryInfo::bIsExplicit to replace the editor's IsExplicitProxyClass and enable the same functionality of requiring exact types at runtime.
#rb rob.gay
[REVIEW] [at]phil.popp
#preflight 6470afe55d3ca2dfd99ab6a1
[CL 25649438 by nicholas howe in ue5-main branch]
- Differentiate between normalized linear and audio linear value for volume output options
#jira UE-145790
#jira UE-155181
#rb phil.popp
#preflight 634f3778c569571da8a4ab2c
#rnx
[CL 22635724 by helen yang in ue5-main branch]
- 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]
- 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]
Enforce single UObject class --> MetaSound Frontend class & fix-up callsites relying on ArrayObject type/literals using cached proxy type. This lead to confusion WRT what registered type is directly associated with a given UObject & possible bugs therein.
#rb phil.popp
#rnx
#jira none
#preflight 62c890fb2823f28cf281a8f1
[CL 21100292 by Rob Gay in ue5-main branch]
- Add Metasound editor setting for default input widget type
- Change member default type from bool to float
- Make widgets only available for inputs (no longer for variables)
- Automatically select/focus newly added/promoted nodes
- Selecting a single node selects the corresponding member in the graph member list if applicable
#jira UE-156767
#jira UE-156772
#rb rob.gay
#preflight 62aa1a77da0af39a474e8975
[CL 20688866 by helen yang in ue5-main branch]
- Fix color for Time:Array type
#jira UE-148269
#jira UE-148862
#rb rob.gay
#preflight 62631545006fa20b683e7a91
[CL 19905171 by helen yang in ue5-main branch]
- Internal SelectedItem member was not getting set after last fix to avoid selection on key navigation while the menu was open
- Minor clean-up
#rb aditya.ravichandran
#rnx
#jira UE-146837
#preflight 623a0a68ec68595f3b88a242
#preflight 623a0a68ec68595f3b88a242
[CL 19469217 by Rob Gay in ue5-main branch]
- Clean-up some MetaSoundMember edgraphnode members
- Minor fix for hover when drag/dropping members not onto graph showing no error state
#rb helen.yang
#rnx
#jira UE-144433
#jira UE-144358
#preflight 62203018f134125ae0bc7078
#ROBOMERGE-AUTHOR: rob.gay
#ROBOMERGE-SOURCE: CL 19253632 in //UE5/Release-5.0/... via CL 19257927
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v924-19243027)
[CL 19263531 by rob gay in ue5-main branch]
- 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]
- Add UX for overriding preset inputs (allowing auto-update to pass through referenced value if not managed)
- Clarify code by moving bAutoUpdateManagestInterface to bIsPreset in new FMetasoundFrontendGraphClassPresetOptions struct
#rb phil.popp
#jira UE-136242
#preflight 6202b1bfae203853a85c6366
#rnx
#ROBOMERGE-AUTHOR: rob.gay
#ROBOMERGE-SOURCE: CL 18911247 in //UE5/Release-5.0/... via CL 18919315 via CL 18920513
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v916-18915374)
[CL 18920762 by rob gay in ue5-main branch]
- added option for volume slider to output linear (0-1) value while displaying dB value
- edge case handling for volume and frequency ranges causing widgets to get stuck
- fix functionality and details panel for clamp and other input float properties
- don't show widgets or widget options on readonly graphs
#jira UE-135525
#jira UE-127715
#jira UE-135856
#jira UE-135866
#jira UE-137488
#rb rob.gay
#preflight 61e0acce250b9537f783ed35
#ROBOMERGE-AUTHOR: helen.yang
#ROBOMERGE-SOURCE: CL 18620012 in //UE5/Release-5.0/... via CL 18620328 via CL 18620770
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v899-18417669)
[CL 18621051 by helen yang in ue5-main branch]
- First pass at consolidating editor code for API members/vertices where possible
- Make Variables & Output now use default literal for input value (so user doesn't have to hunt down literal box in graph)
Various bug fixes:
- Fixes crash in post undo after updating a variable default
- Fixes ':Array' flavor showing up in new SearchableComboBox when selecting `Is Array` for literal type
- Synchronize variable setter default literal with variable interface default literal
- Provide default literal field for outputs & variables for consistency
- Added win is widget support for single input/output types (i.e. floats for now)
- Don't show trigger simulate option on non-transmissible inputs (ex. OnPlay)
- Set simulate button visibility to only show when parameter transmission is supported by input
- Make simulate buttons in graph only visible when sound plays
- Start sounds automatically when clicking simulate in inspector
- Fixed initial condition "holding" trigger state for trigger routing now that Transmission System is only used inter-MetaSound (not intra-MetaSound) and we are deprecating Send/Receives
#rb phil.popp
#rnx
#jira UE-135813
#jira UE-132900
#jira UE-135844
#jira UE-116867
#jira UE-135366
#jira UE-137310
#preflight 61b7afe4fc570891338fea08
#ROBOMERGE-AUTHOR: rob.gay
#ROBOMERGE-SOURCE: CL 18450046 in //UE5/Release-5.0/... via CL 18450065
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v897-18405271)
[CL 18450072 by rob gay in ue5-release-engine-test branch]