static function SmoothDamp (current : float, target : float, ref currentVelocity : float, smoothTime : float, maxSpeed : float = Mathf.Infinity, deltaTime : float = Time.deltaTime) : float
Parameters
Name | Description |
current |
The current position.
|
target |
The position we are trying to reach.
|
currentVelocity |
The current velocity, this value is modified by the function every time you call it.
|
smoothTime |
Approximately the time it will take to reach the target. A smaller value will reach the target faster.
|
maxSpeed |
Optionally allows you to clamp the maximum speed.
|
deltaTime |
The time since the last call to this function. By default Time.deltaTime.
|
Description
Gradually changes a value towards a desired goal over time.
The value is smoothed by some spring-damper like function, which will never overshoot.
The function can be used to smooth any kind of value, positions, colors, scalars.
var target :
Transform;
var smoothTime = 0.3;
private var yVelocity = 0.0;
function Update () {
var newPosition :
float =
Mathf.SmoothDamp(transform.position.y, target.position.y,
yVelocity, smoothTime);
transform.position =
Vector3(transform.position.x, newPosition, transform.position.z);
}
using UnityEngine;
using System.Collections;
public class example :
MonoBehaviour {
public Transform target;
public float smoothTime = 0.3F;
private float yVelocity = 0.0F;
void Update() {
float newPosition =
Mathf.SmoothDamp(transform.position.y, target.position.y, ref yVelocity, smoothTime);
transform.position =
new Vector3(transform.position.x, newPosition, transform.position.z);
}
}
import UnityEngine
import System.Collections
class example(
MonoBehaviour):
public target as
Transform public smoothTime as single = 0.3F
private yVelocity as single = 0.0F
def
Update():
newPosition as single =
Mathf.SmoothDamp(transform.position.y, target.position.y, yVelocity, smoothTime)
transform.position =
Vector3(transform.position.x, newPosition, transform.position.z)