Unity AddTorque对x以上的值没有影响?

时间:2016-01-01 03:59:14

标签: unity3d game-physics unityscript

正如标题所述,我赋予刚体的值似乎没有超过某个值的效果。

我有一个指定了铰链的根对象。除了轴设置为(0,1,0)而不是(1,0,0)之外,它具有默认设置。没有连接的身体。

它有一个附加默认值的刚体。我尝试了许多拖动/角度拖动的组合。似乎没有任何影响。

它有一个子游戏对象/网格渲染器,所以我可以看到它旋转。

任何想法发生了什么?

rotorRoot.AddTorque((rotorRoot.transform.up * 50f), ForceMode.Force);

//慢慢转动

rotorRoot.AddTorque((rotorRoot.transform.up * 5000f), ForceMode.Force);

//转速约为60转(猜测)

rotorRoot.AddTorque((rotorRoot.transform.up * 500000000f), ForceMode.Force);

//转速约为60转(猜测)

1 个答案:

答案 0 :(得分:3)

是的,最大旋转速度有限制,您可以更改它!

来自Physics.maxAngularVelocity的文档页面:

  

任何刚体允许的默认最大角速度   (默认7)。必须是积极的。

     

刚体的角速度被钳制到maxAngularVelocity   避免快速旋转体的数值不稳定。因为这   你可以防止在车轮等物体上进行有意的快速旋转   可以使用每个刚体覆盖此值   Rigidbody.maxAngularVelocity

     

此值通常在编辑 - >项目设置 - >物理中更改   检查员而不是脚本。