MDFastBinding
MDFastBinding copied to clipboard
A versatile and performant alternative to property bindings for designer-friendly workflows in Unreal Engine 5.1+
MDFastBinding
A versatile and performant alternative to property bindings for designer-friendly workflows. Intended for UMG widgets but usable in any blueprint. The goal was to build a tool that allows mutating raw data into a form that can drive visuals, all within the editor, while staying performant.
Requirements
MDFastBinding now only support Unreal 5.1 and later. See the UE-4.27-5.0 tag for older versions. Setting up MDFastBinding with this repo requires that you build your own code.
Setup
-
Clone this repo into your Plugins folder.
-
a) To add bindings to your class, you can extend from
UMDFastBindingUserWidget
b) or add an instance to your own class and call the binding functions at the appropriate locations:
In your header:
UPROPERTY(Instanced)
class UMDFastBindingContainer* Bindings = nullptr;
In your source file:
Bindings->InitializeBindings(this);
Bindings->UpdateBindings(this);
Bindings->TerminateBindings(this);
- Launch the editor and create a blueprint that extends your class (or
MDFastBindingWidget
) - In the editor of your blueprint, you should see a "Binding Editor" button in the toolbar (may require closing and reopening your blueprint):
- This will open a new tab with an empty graph and an empty list on the left side. Create a new binding by click the "Add Binding" button in the bottom left and name your new binding.
- Now on the right side, you can right-click and start adding nodes to your new binding.
- Checkout the examples in the /Content/Examples folder, here's a screenshot binding 2 health variables to a progress bar widget's percent:
Performance
Check out the Performance wiki page for details on how to make performant bindings.