unreal.IKRetargetFilterBoneOpSettings

class unreal.IKRetargetFilterBoneOpSettings(lod_threshold: int = 0, bones_to_filter: None = [], min_frequency: float = 0.0, responsiveness: float = 0.0, velocity_cutoff_hz: float = 0.0, reset_playback: bool = False)

Bases: IKRetargetOpSettingsBase

IKRetarget Filter Bone Op Settings

C++ Source:

  • Plugin: IKRig

  • Module: IKRig

  • File: FilterBoneOp.h

Editor Properties: (see get_editor_property/set_editor_property)

  • bones_to_filter (Array[FilterBoneData]): [Read-Write] A list of bone-pairs to copy transforms between

  • lod_threshold (int32): [Read-Write] The maximum LOD that this Op is allowed to run at. For example if you have LODThreshold of 2, the Op will run until LOD 2 (based on 0 index). When the component LOD becomes 3, it will stop running. A value of -1 forces the Op to execute at all LOD levels. Default is -1.

  • min_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”).

  • reset_playback (bool): [Read-Write] If true, filter is reset when playback loops.

  • responsiveness (double): [Read-Write] Raises the cutoff as angular 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_hz (double): [Read-Write] Hz. Low-passes the raw angular 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 bones_to_filter: None

[Read-Write] A list of bone-pairs to copy transforms between

Type:

(Array[FilterBoneData])

property min_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 reset_playback: bool

[Read-Write] If true, filter is reset when playback loops.

Type:

(bool)

property responsiveness: float

[Read-Write] Raises the cutoff as angular 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_hz: float

[Read-Write] Hz. Low-passes the raw angular 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)