Skip to content
Back
This page's table of contents

User guide

SimpleLevelSeqSmooth User Guide

Complete product user guide for SimpleLevelSeqSmooth

Level sequence data filtering plugin with 12 smoothing algorithms covering mocap, post-processing, and AI scenarios.

  • Unreal Engine 5.2–5.8
  • Version 1.1.0 (Version 2)
  • 12 Smoothing Algorithms covering time-domain, frequency-domain, state estimation, adaptive, and AI-specific approaches
  • Content Browser Integration: Right-click on LevelSequence assets to access smoothing
  • ControlRig Support: Directly processes ControlRig parameter sections (Transform and Scalar)
  • Flexible Output: Choose to overwrite the original sequence or create a new one
  • Batch Processing: Process multiple sequences at once with consistent suffix naming
  • Auto Frame Rate Detection: Automatically reads the sequence frame rate
  1. Copy the SimpleLevelSeqSmooth folder to your project’s Plugins/ directory
  2. Restart the Unreal Editor
  3. Enable the plugin in Edit > Plugins if not already enabled
  1. In the Content Browser, right-click on one or more LevelSequence assets
  2. Select Smooth from the context menu
  3. Choose a smoothing algorithm and adjust parameters
  4. Select output mode (overwrite or create new)
  5. Click OK to apply
#AlgorithmCategoryKey AdvantageBest For
1Moving AverageTime-domainSimplest, zero configurationQuick preview
2GaussianTime-domainVelocity/acceleration curves also smooth, no abrupt changesLarge joints (arms, legs)
3ExponentialTime-domainRecent data weighted more, fast responseReal-time preprocessing
4MedianTime-domainOnly filter that cleanly removes impulse noise / frame jumpsMocap data first pass
5BilateralTime-domainSmooths noise while preserving sudden stops / motion edgesActions with clear start/end
6Butterworth Low-passFrequency-domainPrecise cutoff frequency, zero-phase no delayJoint data (recommended)
7Wavelet DenoisingFrequency-domainMulti-scale separation, automatic noise level estimationFine joints / compound noise
8KalmanState EstimationCombines smoothing with velocity prediction, optimal estimateTrending motion data
9One EuroAdaptiveStrong smoothing at rest, weak at fast motion, minimal latencyVR / AR / real-time interaction
10ComplementaryAdaptiveFuses integration path + direct measurement, zero-phaseIMU inertial mocap
11Savitzky-GolayPolynomialPrecisely preserves peaks and inflection pointsFine joints (fingers)
12Confidence-WeightedAI-specificAuto-detects outlier frames and reduces their weightAI pose estimation

The parameter names below match those shown in the editor dialog.

Arithmetic mean over a sliding window.

ParameterDefaultRangeDescription
Window Size513–501 (odd)Number of frames to average, larger = smoother

Gaussian distribution weighted average, center-weighted with symmetric falloff.

ParameterDefaultRangeDescription
Window Size513–501 (odd)Reference frame range
Sigma12.00.1–100Gaussian width, recommended 1/6–1/3 of window size

Exponentially weighted recursive filter, recent data weighted more.

ParameterDefaultRangeDescription
Alpha0.150.01–1.0Smaller = smoother: 0.01 = strong, 0.15 = recommended, 0.5 = weak

Selects the middle value in a sliding window, best for impulse noise and frame jumps.

ParameterDefaultRangeDescription
Window Size513–501 (odd)Larger window removes more noise but loses detail

Weights by both spatial distance and intensity difference, edge-preserving.

ParameterDefaultRangeDescription
Window Size513–501 (odd)Spatial reference range
Spatial Sigma12.00.1–100Controls spatial smoothing range, larger = smoother
Range Sigma0.50.001–100Controls intensity tolerance, larger = ignores edges, smaller = preserves edges

Second-order frequency-domain filter with zero-phase bidirectional processing.

ParameterDefaultRangeDescription
Cutoff Frequency (Hz)10.00.1–60Motion below this frequency is preserved. Human body < 6 Hz, fingers < 10 Hz
Sample Rate (Hz)Auto1–1000Auto-filled from sequence frame rate; can be changed manually if needed

Haar wavelet transform + MAD noise estimation + soft thresholding.

ParameterDefaultRangeDescription
Decomposition Level41–10More levels = wider frequency range processed, typically 3–5
Threshold Coefficient0.50.01–5.0< 1 preserves more detail, 1 = standard, > 1 = stronger denoising

Optimal state estimation based on constant-velocity motion model (position + velocity).

ParameterDefaultRangeDescription
Process Noise (Q)0.010.0001–10Motion model uncertainty, larger = trusts measurement more (tighter tracking)
Measurement Noise (R)0.10.0001–100Sensor/mocap noise level, larger = stronger smoothing

Adaptive cutoff frequency low-pass filter (CHI 2012), strong smoothing at rest, weak at fast motion.

ParameterDefaultRangeDescription
Min Cutoff1.00.001–30Cutoff frequency at rest, smaller = smoother when still
Speed Coefficient (Beta)0.0070–1.0Speed influence on cutoff: 0 = fixed low-pass, > 0 = reduces smoothing at fast motion
Derivative Cutoff1.00.001–30Smoothing of the speed estimate itself, usually keep default
Sample Rate (Hz)Auto1–1000Auto-filled from sequence frame rate

Forward-backward complementary filter, fuses integration path and direct measurement, zero-phase.

ParameterDefaultRangeDescription
Complementary Alpha0.980.5–0.999Larger = trusts integration (preserves detail), smaller = trusts measurement (suppresses drift). Recommended 0.95–0.99

Local polynomial fitting that preserves peaks and inflection points while smoothing.

ParameterDefaultRangeDescription
Window Size215–501 (odd)Local fitting range
Polynomial Order32–6Fit degree: 2 = parabola, 3 = cubic (recommended), 4 = quartic

Auto-detects outlier frames using MAD robust statistics and reduces their weight. Normal frames are smoothed lightly, while anomalous frames receive stronger corrections.

ParameterDefaultRangeDescription
Window Size513–501 (odd)Local analysis and smoothing range
Sensitivity2.00.1–10Frames beyond this many standard deviations are flagged. Smaller = more sensitive: 1.5 = sensitive, 2.0 = standard, 3.0 = lenient
  • ControlRig plugin (enabled by default)
  • Unreal Engine 5.2–5.8

Open Edit → Project Settings, select the Simple Level Sequence Smooth settings page, and set Language to English or Chinese. English is the default. Available user-facing UI, tooltips, notifications, and functional logs update immediately without restarting the editor. Public API names and module startup/shutdown logs remain in English.

For usage questions or collaboration, please visit the contact page.