0
我在同一場景中有兩個圓圈,我需要其中一個圓圈重複與其他位置相同的運動。只保留與其他尺寸的距離。Unity3D - 以相同速度跟隨另一個對象(可變速度)
考慮到圓圈「A」和圓圈「B」,我將圓形座標「A」存儲在位置數組上,然後圓圈「B」讀取這些位置並執行。
使用這種方法時,我在增加速度圓圈「A」時遇到問題,因爲圓圈「B」仍然讀取先前存儲的速度,使圓圈分開。
查看該圖像:
理想的是,圓「B」上的圓圈「A」的當前的速度運行,但是它會永遠不可能從陣列中讀出已經以當時的圈子「A」的速度記錄下來。
var dir = Input.mousePosition - Camera.main.WorldToScreenPoint(transform.position);
var angle = Mathf.Atan2(dir.y, dir.x) * Mathf.Rad2Deg;
transform.rotation = Quaternion.RotateTowards(transform.rotation, Quaternion.AngleAxis(angle, Vector3.forward), 180 * Time.deltaTime);
transform.position += transform.right * Time.deltaTime * velocity;
Camera.main.transform.position = new Vector3(transform.position.x, transform.position.y, Camera.main.transform.position.z);
recordList.Insert(0, new Recorder
{
Position = transform.position,
Rotation = transform.rotation,
Velocity = velocity
});
什麼是製作這種場景的最佳方式?
我很感激任何幫助提前!
嗨,感謝您的回覆。但是,當我們將對象存儲在數組中時,執行的計算將在此時被存儲......包括執行SPEED(在存儲時計算)'transform.position + = transform.right * Time.deltaTime *速度;'。請參閱最新的問題。 – IgoR