我正在尝试用 C# 编写一个基本脚本,以使我的相机在我的玩家四处走动时跟随他们。我正在关注此处列出的第三个相机教程。代码都在 javascript 中,虽然它很容易翻译,但我担心可能会因为这个原因而遗漏一些东西。我收到以下错误:
PlayerCamera.cs(21,65):错误 CS0119:表达式表示
type', where a
变量',value' or
方法组'是预期的
它指的是这行代码:
newPosition += Quaternion.Euler(0, yAngle, 0) * Vector3(0.0f, distanceAbove, -distanceAway);
我已经尝试过在行中更新 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);
}
}