Creating an Effect (Blueprint)
Effects now use a single-class model:
UEDInteractionEffectis the class you authorUEDInteractionEffectis also the runtime object that gets spawned and ticked
Recommended workflow
- Create a Blueprint class derived from
UEDInteractionEffect. - Configure its defaults, such as:
ChannelbStopPreviousInSameChannelbRunOnDedicatedServer- Any custom variables you add in your derived Blueprint
- Implement one or more event entry points:
On StartOn TickOn Finish
- Add that Blueprint class to one of the effect arrays in
UEDInteractionEffectsComponent.
Template Blueprint
The plugin adds a single asset factory entry:
- ED Interaction Effect Blueprint
When you create the Blueprint from that entry, the Event Graph already contains:
On StartOn TickOn Finish
Accessing interaction data
Inside the effect Blueprint you can use the event parameters directly, or call:
GetEffectContext()
Useful direct helpers on the effect object:
GetTargetComponent()GetTargetMeshComponent()GetTargetStaticMeshComponent()GetTargetSkeletalMeshComponent()GetInteractableActor()GetInstigatorController()GetInstigatorPawn()GetElapsedSeconds()GetNormalizedProgress(...)GetPreferredEffectLocation()GetPreferredEffectNormal()
What the events provide
On Start and On Finish provide:
- Full
FEDInteractionEffectContext UPrimitiveComponent*UMeshComponent*UStaticMeshComponent*USkeletalMeshComponent*
On Tick provides:
DeltaSeconds- Full
FEDInteractionEffectContext - The same typed component pointers as above
This makes it easy to build one Blueprint that works with both Static Mesh and Skeletal Mesh targets without extra casting in common cases.