在Unity中让物体旋转的方法有很多,但是如果想让物体旋转得像现实一样有平滑的加速减速惯性那么用AddTorque是一个很好的选择。
Rigidbody.AddTorque方法在2D和3D中都有该方法,但是不太一样,在官方文档中的描述是Rigidbody.AddTorque向刚体添加扭矩,而Rigidbody2D.AddTorque则是在刚体的质心处添加扭矩,具体有什么不同我们下面再说。
Rigidbody.AddTorque(Vector3 torque, ForceMode)(第二个参数可省略默认为ForceMode.Force),其中torque参数代表了旋转的轴和扭矩大小,旋转方向按照左手定则即握住左手大拇指伸出,大拇指方向为旋转轴而四指围绕方向为旋转方向。举个例子,假设旋转轴是穿过屏幕且垂直于屏幕向外那么旋转方向为顺时针。ForceMode是unity中有关于力的常见参数,表示的是施加的力的模式。
ForceMode.Force : 持续施加一个力,与质量mass有关
ForceMode.Impulse : 瞬间施加一个力,与质量mass有关
ForceMode.Acceleration:持续施加一个力,与质量mass无关
ForceMode.VelocityChange:瞬间施加一个力,与质量mass无关
举个示例文章来源:https://www.toymoban.com/news/detail-518756.html
Public Rigidbody rb;
private float torque;
void Update()
{
rb.AddTorque(transform.up*torque,ForceMode.Impluse);
}
而Rigidbody2D.AddTorque则有些不同,前面说了该方法是在其质心处施加扭矩所以旋转文章来源地址https://www.toymoban.com/news/detail-518756.html
到了这里,关于unity物体旋转:RigidBody.AddTorque的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!