unreal.OneEuroFilterSettings

class unreal.OneEuroFilterSettings(responsiveness: float = 0.0, cutoff_frequency: float = 0.0, velocity_cutoff_frequency: float = 0.0)

Bases: StructBase

These are settings for an adaptive first-order low-pass filter based on the “One-Euro” 2012 paper: https:gery.casiez.net/1euro/

C++ Source:

  • Plugin: IKRig

  • Module: IKRig

  • File: RetargetOpUtils.h

Editor Properties: (see get_editor_property/set_editor_property)

  • cutoff_frequency (double): [Read-Write] Hz. Sets the low-pass cutoff when motion is near zero. Higher = less smoothing at rest (more responsive but more jitter). Lower = more smoothing at rest (less jitter but more “stickiness”).

  • responsiveness (double): [Read-Write] Raises the cutoff as speed grows. Larger values are snappier on fast turns. Smaller values are smoother but laggier during quick motion. Typical sweet spot: 0.3 – 0.8

  • velocity_cutoff_frequency (double): [Read-Write] Hz. Low-passes the raw velocity before we use it to adapt the derivative cutoff. If you see breathing/pumping of the smoothing during motion onsets or reversals, lower this value (e.g., 30 → 20 Hz). If responsiveness to fast changes is sluggish, raise this a bit. Good starting range: 15–30 Hz. Keep under Nyquist frequency (frame_rate/2).

property cutoff_frequency: float

[Read-Write] Hz. Sets the low-pass cutoff when motion is near zero. Higher = less smoothing at rest (more responsive but more jitter). Lower = more smoothing at rest (less jitter but more “stickiness”).

Type:

(double)

property responsiveness: float

[Read-Write] Raises the cutoff as speed grows. Larger values are snappier on fast turns. Smaller values are smoother but laggier during quick motion. Typical sweet spot: 0.3 – 0.8

Type:

(double)

property velocity_cutoff_frequency: float

[Read-Write] Hz. Low-passes the raw velocity before we use it to adapt the derivative cutoff. If you see breathing/pumping of the smoothing during motion onsets or reversals, lower this value (e.g., 30 → 20 Hz). If responsiveness to fast changes is sluggish, raise this a bit. Good starting range: 15–30 Hz. Keep under Nyquist frequency (frame_rate/2).

Type:

(double)