Quaternion.LookRotation和lookat
阿新 • • 發佈:2019-01-10
Quaternion.LookRotation(v3 v)的引數是一個向量,是讓物體z軸和這個向量重合
Quaternion.LookRotation(v3 v1,v3 v2)前一個引數對應物體z軸,後一個對應Y軸
lookat的引數是一個點,是讓物體Z軸指向這個點
利用這一點可以實現一個簡單的移動
void Move() { float horizontal = Input.GetAxis("Horizontal");//獲取水平偏移量(x軸) float vertical = Input.GetAxis("Vertical"); //獲取垂直偏移量(z軸) //將水平偏移量與垂直偏移量組合為一個方向向量 Vector3 direction = new Vector3(horizontal, 0, vertical); //判斷是否有水平偏移量與垂直偏移量產生 if (direction != Vector3.zero) { //將遊戲物件的z軸轉向對應的方向向量 // transform.rotation = Quaternion.LookRotation(direction); //對上一行程式碼進行插值運算則可以將轉向表現得較平滑 B.rotation = Quaternion.Lerp(B.rotation, Quaternion.LookRotation(direction), 0.3f); //將遊戲物件進行移動變換方法則可以實現簡單的物體移動 B.Translate(Vector3.forward * 5 * Time.deltaTime); } }