Unity 物体旋转

  代码1,旋转45度

旋转使用this.transform.localEulerAngles(欧拉角),而不用rotation,是因为这样更方便简单一些

    /// <summary>
    /// 旋转45度
    /// </summary>
    private void Rotate45()
    {
        // 通过修改欧拉角进行旋转
        this.gameObject.transform.eulerAngles = new Vector3(0, 45, 0);
        //this.gameObject.transform.localEulerAngles = new Vector3(0, 45, 0);
    }

  代码2,让电扇持续旋转

    /// <summary>
    /// 让电扇持续旋转
    /// </summary>
    private void Rotate()
    {
        Vector3 v3 = this.transform.localEulerAngles;
        v3.y += 0.5f;
        this.transform.localEulerAngles = v3;
    }

  代码3,让电扇匀速旋转

    void Start()
    {
        Application.targetFrameRate = 60;//设置帧率
    }
    void Update()
    {
        RotateOnSpeed(); //匀速旋转
    }
    /// <summary>
    /// 匀速旋转
    /// </summary>
    private void RotateOnSpeed()
    {
        float speed = 30;
        Vector3 v3 = this.transform.localEulerAngles;
        v3.y += speed * Time.deltaTime;
        this.transform.localEulerAngles = v3;
    }

  代码4,相对旋转(沿自身坐标轴旋转)

    /// <summary>
    /// 沿自身坐标轴旋转
    /// </summary>
    private void Rotate2()
    {
        this.transform.Rotate(0, 0.2f, 0, Space.Self);
    }

  代码5,沿自身坐标轴匀速旋转

    /// <summary>
    /// 沿自身坐标轴匀速旋转
    /// </summary>
    private void RotateOnSpeed2()
    {
        float speed = 30;
        this.transform.Rotate(0, speed * Time.deltaTime, 0, Space.Self);
    }

  

 

posted @ 2023-07-12 14:37  牛大胆V5  阅读(525)  评论(0)    收藏  举报