Unity飞船摄像机360度环绕(逐步完善)

  1. 极简版

//目标飞船
public Transform target;
//摄像机距离
public float distance = 100;

void Update()
{
    float mouseX = Input.GetAxis("Mouse X");
    float mouseY = Input.GetAxis("Mouse Y");
    Vector3 rot = new Vector3(-mouseY, mouseX, 0);
    if (Input.GetMouseButton(0))
    {
        //设置摄像机角度
        transform.eulerAngles += rot;
        //由于没有z轴旋转,且z轴直接指向目标,所以以目前摄像机角度的forward向后退即可。
        this.transform.position = target.position - this.transform.forward * distance;
    }
}

猜你喜欢

转载自blog.csdn.net/HeDanTou_/article/details/129686981