我有一個相機,我希望始終保持在與玩家相同的位置。我是通過讓它成爲玩家的孩子來做到這一點的,因爲當我通過腳本完成時,玩家在相機之前。我也有相機與鼠標旋轉。但是,當我將相機制作爲播放器的孩子時,我的播放器和相機現在不停止旋轉,但在鼠標靜止時繼續播放。我只想在鼠標移動時相機旋轉。我的代碼(JS):Unity - 玩家的相機小孩無法控制地旋轉
#pragma strict
var player : GameObject;
function Start() {
player = GameObject.Find("Player");
Cursor.visible = false;
}
function Update() {
//transform.position = player.transform.position;
transform.Rotate(Input.GetAxis("Mouse Y") * -2, Input.GetAxis("Mouse X") * 5, 0);
transform.rotation.eulerAngles = new Vector3(transform.rotation.eulerAngles.x, transform.rotation.eulerAngles.y, 0);
//player.transform.rotation = transform.rotation;
}
首先註釋掉線的是攝像頭移動到播放器現已不必要的代碼,第二行是導致問題的一個。如果我刪除它,相機旋轉正常,但玩家不能轉動(基於transform.forward的控件)。如果我取消註釋,播放器和相機就會毫無摩擦地轉動,無法控制。
你有沒有嘗試從Unity示例項目預製相機?他們有像第三人一樣的酷工作相機等。您可以查看代碼或僅使用它。 –
謝謝,我可能會這樣做。 – battlemage64
好消息!問題在於它旋轉了播放器,然後將它作爲播放器的一個小孩旋轉,重複了令人厭惡的想法。試圖解決它。 – battlemage64