unity 運動相關學習記錄

unity部分文章爲學習記錄,理解不是很深入,主要用於自我學習總結,若是有紕漏請大佬輕噴。學習


1、經過position屬性實現物體的運動

一、update循環中調用Vector3.movetowards,直接設置物體的positioncode

輸入的參數 終點位置、速度
使用場景 知道終點座標
運動類型 勻速運動

示例代碼:orm

//target [Vector3]  終點的position
//Speed  [float]  勻速移動的速度,能夠設爲5.0f  

void Update(){
    transform.position = Vector3.MoveTowards(transform.position, target, Time.deltaTime * Speed);
}

二、update 循環中調用Vector.Lerp,直接設置物體的positionget

輸入的參數 終點位置、速度
使用場景 知道終點座標
運動類型 運動會愈來愈慢
//target [Vector3]  終點的position
//Speed  [float]  勻速移動的速度,能夠設爲5.0f   

void Update(){
    transform.position = Vector3.Lerp(transform.position, target, Time.deltaTime * Speed);
}

三、transform的translate方法it

輸入的參數 運動的方向向量、速度
使用場景 不知道終點座標,會一直運動下去
運動類型 勻速運動
//direction [Vector3]  運動的方向,能夠設爲(0,0,1)
//Speed  [float]  勻速移動的速度,能夠設爲5.0f 

void Update(){
    transform.Translate(direction * Speed * Time.deltaTime);
}

2、基於剛體,經過力、加速度實現物體的運動

正在學習中io

相關文章
相關標籤/搜索