Warp root motion along spline paths. Characters follow any USplineComponent during a montage window, with dynamic spline support that updates every frame at runtime.
Note: Extends Epic's Motion Warping plugin (currently in Beta) — drop-in integration, no refactoring needed.
🎬 Showcase | 🛠️ Tutorial | 📖 Docs | 📦 Demo Project | 💬 Discord
FEATURES
Dynamic Splines - Spline is re-read every frame. Move control points or reshape curves at runtime, character adapts mid-warp
Drop-in Integration - Works with your existing MotionWarpingComponent and Anim Notify States
4 Rotation Modes - FaceSplineTangent, FaceTarget, Locked, UseWarpRotation. All include a Z-axis only toggle
Blend In – Smooth interpolation (BlendInRatio) onto the spline path to prevent teleport snapping.
Debug Visualization - Spline progress coloring, position markers, offset lines, progress %
Engine Native – Inherits from URootMotionModifier_Warp. All core engine warp properties carry through.
USE CASES
Traversal - Winding paths, rails, ziplines, ledges
Combat - Curving dash attacks, homing lunges
Platforming - Dynamic paths that reshape at runtime
VS BUILT-IN MOTION WARPING
UE's built-in system warps toward a single point — a straight line. This plugin warps along a curved spline path. Builds on top of the engine's system, not alongside it. Your existing setup keeps working.
💡 PRO-TIP: For best results, ensure the Spline Component is not a child of the actor being warped. If it is attached, the spline moves with the character's root, causing a "feedback loop" shift. Use a detached spline or a separate Spline Actor.