[英]Is there a way to rotate gameobject using Quaternion.LookRotation() on Y axis only?
所以,我正在開發 Unity 項目。 我有一個迫擊炮,它傾向於玩家游戲對象。 我想旋轉它,讓它跟隨玩家的運動。 我在我的更新方法中想出了這個簡單的代碼:
Vector3 directionToFace = _player.position - transform.position;
directionToFace.y = 0;
Debug.DrawRay(transform.position, directionToFace, Color.green); // for visualization
transform.rotation = Quaternion.LookRotation(directionToFace);
但是將 y 設置為 0 將 x 軸的旋轉上限設置為 0,但我希望我的迫擊炮向前傾斜一點。 我嘗試將 y 設置為許多不同的值,但是兩個物體之間的距離決定了迫擊炮的傾斜程度。 是的,我知道我可以將其設為空游戲對象的子對象並將腳本應用於父對象,但如果有任何其他方法可以在我的代碼中解決此問題...您的幫助將不勝感激。
我唯一的想法是計算兩個游戲對象之間的距離並相應地更改 directionToFace.y 的值。 但是我必須在檢查器中獲得分配給迫擊炮的局部旋轉,然后使用勾股定理計算值......但我不想那么折磨自己:D
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.