我正在尝试通过触摸或鼠标拖动来旋转轮子。我以前使用过这段代码,但现在我尝试在 Rigidbody2d 上使用它并进行触摸。Argument:1 cannot convert UnityEngine.Vector3 to float我在两个方面都遇到错误rb.AddTorquepublic void OnDrag(PointerEventData eventData){ rb.AddTorque(Vector3.up * torque * -Input.GetAxis("Mouse X")); rb.AddTorque(Vector3.right * torque * Input.GetAxis("Mouse Y"));}
2 回答
HUH函数
TA贡献1836条经验 获得超4个赞
官方统一文档指出,为 2D 刚体添加扭矩仅接受浮点数和可选的力模式,如下所示:
public void AddTorque(float torque, ForceMode2D mode = ForceMode2D.Force);
您会收到错误,因为您试图传入需要浮点数的 Vector3。
慕运维8079593
TA贡献1876条经验 获得超5个赞
根据AddTorque文档,除非您要传递三个参数,否则应该采用 Vector3 。但这是2019.2的情况。
我会看一下它的参数类型来验证(在 VS 中,当光标位于参数列表中时按 ctrl+shift+space)。还要确保扭矩是浮动的。
- 2 回答
- 0 关注
- 208 浏览
添加回答
举报
0/150
提交
取消