RealDocs

UKismetMathLibrary::REase

function Engine Blueprint Since 4.0
#include "Kismet/KismetMathLibrary.h"
Access: public Specifiers: staticUFUNCTIONBlueprintPure

Description

Interpolates between rotators A and B using an easing curve instead of a linear blend. Useful for cinematic or polished rotation transitions with ease-in/ease-out feel.

Caveats & Gotchas

  • This function is marked BlueprintInternalUseOnly — it is not directly exposed as a standalone Blueprint node. In Blueprint, use the generic 'Ease' node which routes through here. In C++, call it directly.
  • BlendExp and Steps only affect certain easing function types (ExpoIn/Out use BlendExp; Step uses Steps) — passing them for Linear or SinusoidalIn/Out easing has no effect.

Signature

static ENGINE_API FRotator REase(FRotator A, FRotator B, float Alpha, bool bShortestPath, TEnumAsByte<EEasingFunc::Type> EasingFunc, float BlendExp = 2, int32 Steps = 2);

Parameters

Name Type Description Default
A FRotator Start rotation.
B FRotator End rotation.
Alpha float Blend factor in [0, 1].
bShortestPath bool Interpolate via shortest angular path per component.
EasingFunc TEnumAsByte<EEasingFunc::Type> Easing curve type (Linear, EaseIn, EaseOut, EaseInOut, etc.).
BlendExp float Exponent for EaseIn/EaseOut curves. 2
Steps int32 Number of steps for stepped easing functions. 2

Return Type

FRotator

Example

Ease-in camera rotation for a cinematic intro C++
float Alpha = FMath::Clamp(ElapsedTime / TotalDuration, 0.f, 1.f);
FRotator EasedRot = UKismetMathLibrary::REase(
	StartRot, EndRot, Alpha,
	/*bShortestPath=*/true,
	EEasingFunc::EaseInOut,
	/*BlendExp=*/3.f,
	/*Steps=*/2);
CameraComponent->SetWorldRotation(EasedRot);

Version History

Introduced in: 4.0

Version Status Notes
5.6 stable

Feedback

Was this helpful?

Suggest an edit

Select a field above to begin editing.