2013-08-30 77 views
0

我想在C#中編寫一個基本腳本,讓我的相機在他們四處走動時跟隨我的播放器。我正在按照here列出的第3款相機教程。代碼全部用javascript編寫,雖然很容易翻譯,但恐怕有些東西可能會因爲這個原因而丟失。我收到以下錯誤:Unity3D播放器相機錯誤cs0119

PlayerCamera.cs(21,65): error CS0119: Expression denotes a type', where a variable', value' or method group' was expected

是指這行代碼:

newPosition += Quaternion.Euler(0, yAngle, 0) * Vector3(0.0f, distanceAbove, -distanceAway); 

我已經嘗試過newing的中的Vector3線和使用單獨的變量來存儲的Vector3說之前倍增,而且我對Unity的編程非常陌生,因此我的想法已經過時。任何和所有的幫助表示讚賞!參考

全碼:

using UnityEngine; 
using System.Collections; 

public class PlayerCamera : MonoBehaviour { 

    public Transform player; 
    public float smoothTime = 0.3f; 
    public float distanceAbove = 3.0f; 
    public float distanceAway = 5.0f; 
    private float yVelocity = 0.0f; 

    // Update is called once per frame 
    void Update() { 
     float yAngle = Mathf.SmoothDampAngle(transform.eulerAngles.y, 
              player.eulerAngles.y, 
              ref yVelocity, 
              smoothTime); 

     Vector3 newPosition = player.position; 

     newPosition += Quaternion.Euler(0, yAngle, 0) * Vector3(0.0f, distanceAbove, -distanceAway); 

     gameObject.transform.position = newPosition; 
     gameObject.transform.LookAt(player); 
    } 
} 

回答

1

在C#結構(在你的情況Vector3)具有與new關鍵字來進行初始化。

newPosition += Quaternion.Euler(0, yAngle, 0) * new Vector3(0.0f, distanceAbove, -distanceAway); 
+0

謝謝你,我實際上更深入地瞭解了我的調試日誌中發生了什麼。當我添加新的,1錯誤CS0119會消失,但會出現7個不同的錯誤。我認爲這7個錯誤是來自於這種變化,但是他們出於任何原因在一個不相關的腳本中,只有在我修復了攝像機腳本後才顯示出來......我很傻。儘管謝謝您的幫助! – acwatson421

0

我可能誤解了,但如果你想有一個攝像頭跟隨你的控制器,爲什麼不只是讓孩子對象,並把它放在你想要的位置?