AddForce();AddRelativeForce();FixedUpdate()

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了AddForce();AddRelativeForce();FixedUpdate()相关的知识,希望对你有一定的参考价值。

1.AddForce()

1.作用 给刚体添加一个力,让刚体按"世界坐标系"进行运动.

2.代码
Rigibody.AddForce(Vector3,ForceMode);
Vector3:里的方向和大小;
ForceMode:力的模式[enum类型].

3.ForceMode参数
类型为枚举类型,以什么样的方式添加力给刚体.

枚举值说明
Acceleration:加速度
Force:(力)这种模式通常用于设置真是的物理
Impulse:(冲击力)这种模式通常用于瞬间发生的力
VelocityChange:(速度的变化)

2.AddRelativeForce()

1.作用
给刚体添加一个力,让刚体按"自身坐标系"进行运动.

2.代码
Rigidbody.AddrelativeForce(Vector3,ForceMode);
Vector3:力的方向和大小
ForceMode:力的模式[enum类型].

3.FixedUpdate()

固定更新方法.
所有和物理相关的操作,代码都要写在FixedUpdate()方法体内.
固定更新的事件间隔是0.02秒,1秒执行50次.
Edit-->ProjectSettings-->Time 面板中的Fixed Timestep参数设置.

Update()方法是每帧执行一次.
画面每渲染完一次,就是一帧,每帧的时间是不固定的.
在Update()方法中执行物理操作,会出现卡顿的情况.

以上是关于AddForce();AddRelativeForce();FixedUpdate()的主要内容,如果未能解决你的问题,请参考以下文章

方法“AddForce()”无法处理我的对象

自上而下的太空飞行物理 - AddForce - 物体越快越远离中心

Unity Photon Rigidbody Addforce 仅适用于主客户端

OnTriggerEnter2D AddForce 到对象不起作用

unity3d/2d刚体addforce如何才能立即停下来,我人物移动每次都会滑行一会

unity中按键按着不送力一直作用在物体上,而是按下一次作用一次