Skip to main content

Class SpringUtils.SpringConfig

Defines frequency and damping values for spring motion, and manages value updates based on a target.

[Serializable]
public class SpringUtils.SpringConfig

Inheritance​

Constructors​

SpringConfig()​

Constructs a new SpringConfig with default frequency (15) and damping ratio (0.5).

public SpringConfig()

SpringConfig(float, float, float)​

Constructs a new SpringConfig with specified frequency, damping, and optional starting value.

public SpringConfig(float frequency, float dampingRatio, float startingValue = 0)

Parameters​

NameTypeDescription
frequencyfloatThe angular frequency of the spring.
dampingRatiofloatThe damping ratio (0 to 1).
startingValuefloatInitial position value.

Fields​

DampingRatio​

The damping ratio determines how springy the motion feels (overshooting or not).

[Range(0, 1)]
[Tooltip("The damping ratio controls how \"spring-y\" the movement should feel.\n- 1 = no overshooting.\n- 0 = infinite oscillation.")]
public float DampingRatio

Field Value​

float

DefaultDampingRatio​

Default damping ratio for spring motion.

public const float DefaultDampingRatio = 0.5

Field Value​

float

DefaultFrequency​

Default angular frequency for spring motion.

public const float DefaultFrequency = 15

Field Value​

float

Frequency​

The frequency controls how strong or fast the spring responds to movement changes.

[Min(0)]
[Tooltip("The frequency controls how \"strong\" the movement is.\n- Low frequency means the spring is less reactive to changes.\n- High frequency causes fast and aggressive responses.")]
public float Frequency

Field Value​

float

Properties​

Value​

Getter and setter for the current value.

public float Value { get; set; }

Property Value​

float

Methods​

UpdateMotion(float)​

Updates the current spring value toward a target using Time.deltaTime.

public float UpdateMotion(float targetPos)

Parameters​

NameTypeDescription
targetPosfloatTarget value to spring toward.

Returns​

float — Updated position after applying spring dynamics.

UpdateMotion(float, float)​

Updates the current spring value toward a target using a custom delta time.

public float UpdateMotion(float targetPos, float deltaTime)

Parameters​

NameTypeDescription
targetPosfloatTarget value to approach.
deltaTimefloatTime delta used for motion calculation.

Returns​

float — Updated position value.

  • Constructors
    • SpringConfig()
    • SpringConfig(float, float, float)
  • Fields
    • DampingRatio
    • DefaultDampingRatio
    • DefaultFrequency
    • Frequency
  • Properties
    • Value
  • Methods
    • UpdateMotion(float)
    • UpdateMotion(float, float)