播放器不会移动到相机所在的位置

时间:2017-02-21 07:57:26

标签: c# unity3d unity5

当我按住'w'并移动相机时,播放器不会沿着摄像机方向移动,例如,如果我向前移动相机向左移动它不会向左移动但继续向前移动,什么是一些可能的解决方法。玩家移动脚本

    public float movementspeed = 5.0F;

// Use this for initialization
void Start () {
    Cursor.lockState = CursorLockMode.Locked;
}

// Update is called once per frame
void Update () {

    float translation = Input.GetAxis("Vertical") * movementspeed;
    float straffe = Input.GetAxis("Horizontal") * movementspeed;
    translation *= Time.deltaTime;
    straffe *= Time.deltaTime;

    transform.Translate(straffe, 0, translation);
}

}

和相机视图脚本

    public float xMoveThreshold = 1000.0f;
public float yMoveThreshold = 1000.0f;

public float yMaxLimit = 50.0f;
public float yMinLimit = -50.0f;


float yRotCounter = 0.0f;
float xRotCounter = 0.0f;

Transform player;

void Start()
{
    player = Camera.main.transform;
}

// Update is called once per frame
void Update()
{
    xRotCounter += Input.GetAxis("Mouse X") * xMoveThreshold * Time.deltaTime;
    yRotCounter += Input.GetAxis("Mouse Y") * yMoveThreshold * Time.deltaTime;
    yRotCounter = Mathf.Clamp(yRotCounter, yMinLimit, yMaxLimit);
    //xRotCounter = xRotCounter % 360;//Optional
    player.localEulerAngles = new Vector3(-yRotCounter, xRotCounter, 0);
}

}

Picture 1

Picture 2

0 个答案:

没有答案