【Unity,C#】键鼠操控摄像机位移转向

Unity.C#.键鼠操控摄像机位移转向

效果

请添加图片描述

实现

  • 配置

在这里插入图片描述

  • 代码
using UnityEngine;

public class cameraMove : MonoBehaviour
{
    /// <summary>
    /// 摄像头转向的速度
    /// </summary>
    [SerializeField]
    private float speedRotate = 3.0f;

    /// <summary>
    /// 摄像头移动的速度
    /// </summary>
    [SerializeField]
    private float speedMove = 20.0f;

    private float X = 0.0f;
    private float Y = 0.0f;

    void Update()
    {
        X += Input.GetAxis("Mouse X") * speedRotate;
        Y += Input.GetAxis("Mouse Y") * speedRotate;
        transform.localRotation = Quaternion.AngleAxis(X, Vector3.up);
        transform.localRotation *= Quaternion.AngleAxis(Y, Vector3.left);
        transform.position += transform.forward * speedMove * Input.GetAxis("Vertical") * Time.deltaTime;
        transform.position += transform.right * speedMove * Input.GetAxis("Horizontal") * Time.deltaTime;
    }
}

猜你喜欢

转载自blog.csdn.net/weixin_42473228/article/details/126270253