Unity Rigidbody2d AddTorque 通过触摸拖动

我正在尝试通过触摸或鼠标拖动来旋转轮子。我以前使用过这段代码,但现在我尝试在 Rigidbody2d 上使用它并进行触摸。


Argument:1 cannot convert UnityEngine.Vector3 to float我在两个方面都遇到错误rb.AddTorque


public void OnDrag(PointerEventData eventData)

{

    rb.AddTorque(Vector3.up * torque * -Input.GetAxis("Mouse X"));


    rb.AddTorque(Vector3.right * torque * Input.GetAxis("Mouse Y"));

}


慕码人8056858
浏览 219回答 2
2回答

HUH函数

官方统一文档指出,为 2D 刚体添加扭矩仅接受浮点数和可选的力模式,如下所示:public void AddTorque(float torque, ForceMode2D mode = ForceMode2D.Force);您会收到错误,因为您试图传入需要浮点数的 Vector3。

慕运维8079593

根据AddTorque文档,除非您要传递三个参数,否则应该采用 Vector3 。但这是2019.2的情况。我会看一下它的参数类型来验证(在 VS 中,当光标位于参数列表中时按 ctrl+shift+space)。还要确保扭矩是浮动的。
打开App,查看更多内容
随时随地看视频慕课网APP