Version: 2019.3
public static Vector3 SmoothDamp (Vector3 current, Vector3 target, ref Vector3 currentVelocity, float smoothTime, float maxSpeed= Mathf.Infinity, float deltaTime= Time.deltaTime);

Parameters

current@param current Текущая позиция.
target@param target Позиция которой хотим достичь.
currentVelocity@param currentVelocity Текущая скорость. Это значение модифицируется функцией каждый раз, когда вы вызываете ее.
smoothTime@param smoothTime Приблизительное время требующееся для достижения цели. Наименьшее значение достигнет цели быстрее.
maxSpeed@param maxSpeed Опционально позволяет вам ограничить максимальную скорость.
deltaTime@param deltaTime Время прошедшее с последнего вызова данной функции. По умолчанию Time.deltaTime.

Description

Gradually changes a vector towards a desired goal over time.

The vector is smoothed by some spring-damper like function, which will never overshoot. The most common use is for smoothing a follow camera.

// Smooth towards the target

using UnityEngine; using System.Collections;

public class ExampleClass : MonoBehaviour { public Transform target; public float smoothTime = 0.3F; private Vector3 velocity = Vector3.zero;

void Update() { // Define a target position above and behind the target transform Vector3 targetPosition = target.TransformPoint(new Vector3(0, 5, -10));

// Smoothly move the camera towards that target position transform.position = Vector3.SmoothDamp(transform.position, targetPosition, ref velocity, smoothTime); } }