【Unity】人物的方向跟隨滑鼠的方向
阿新 • • 發佈:2019-02-14
void Turning () { // 建立一個物理射線,獲取滑鼠的座標 Ray camRay = Camera.main.ScreenPointToRay (Input.mousePosition); // 我這裡判斷的是射線打擊到地面 RaycastHit floorHit; // 表示只檢測第8層 LayerMask floorMask = 1<< 8; // 如果射線打擊到物體,並且物體屬於floorMask層 if(Physics.Raycast (camRay, out floorHit, 1000, floorMask)) { // 獲取滑鼠點到地面上的點和人物當前座標之間的向量差 Vector3 playerToMouse = floorHit.point - transform.position; // 設定差值的y軸的角度為0 playerToMouse.y = 0f; // 計算角度 Quaternion newRotation = Quaternion.LookRotation (playerToMouse); // 賦值給人物 playerRigidbody.MoveRotation (newRotation); } }