【问题标题】:Move a rigidbody to its facing direction将刚体移动到其面对的方向
【发布时间】:2014-03-23 14:30:02
【问题描述】:

我有一个刚体2D,当用户按下左箭头时它正在旋转,我希望当用户按下向上箭头时将该对象移动到每个面向的方向。有什么帮助吗?

        if (Input.GetKey(KeyCode.LeftArrow))
        {
            rigidbody2D.AddTorque(Input.GetAxis("Horizontal"));
        }
        else
        {
            rigidbody2D.angularVelocity = 0;
        }

【问题讨论】:

    标签: unity3d


    【解决方案1】:

    您可以使用transform.TransformDirection(Vector3.forward); 获取游戏对象的前进方向 这将返回具有对象正向的向量,然后您可以使用此向量来平移对象 transform.Translate(<vector here>);transform.Translate(transform.TransformDirection(Vector3.forward)); 。如果您有一个角色控制器附加到该对象,那么您也可以使用该组件来移动角色。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-07-01
      相关资源
      最近更新 更多