Mathf.SmoothDamp does not reach target or 0. Is this correct?

Yes/No thread… Let’s stick one in the Google cache?

People talk like SmoothDamp reaches it’s target. That’s not what I am seeing. I’m seeing something like a tangent in the simplest use case.

using UnityEngine;
using System.Collections;

public class smoothdamptest : MonoBehaviour {
  
    public float velocity = 0.0F;
    public float test = 0;

    void Update () {
        //public static float SmoothDamp(float current, float target, ref float currentVelocity, float smoothTime);
        test = Mathf.SmoothDamp(test, 10, ref velocity, 1.0F);
        Debug.Log (test);
    }
}

Mathf.SmoothDamp does not reach it’s target. You will need to set a threshold any time you want a variable adjusted by Mathf.SmoothDamp to actually stop moving (before reaching the point at which it the float type is full). Is my understanding correct?

Yes, you can use: Unity - Scripting API: Mathf.Approximately
…to check for completion or roll your own if you want a specific threshold.