物理系统--Unity component --- Rigidbody

object添加该组件的目的是为了让物体收到 Nvidia 物理引擎的作用。目的是(communicate this movement of colliders)将碰撞器之间作用(物理引擎的运算结果)反应到object的transform组件上。translate 方法是直接对物体做位移,物理学上的移动1.施加力。2.修改速度。 

 

 Body type:1. Dynamic 性能低,物体需要与所有其他碰撞物体计算一次(affected by gravity and forces)

       2. Kinematic 物体则不受到gravity和foreces,Rigidbody3D中勾选Kinematic即可使得运动方式脱离物理系统,但要实现碰撞检测则必须其中之一有刚体。只受到                                                 user control,且只接受explicitly via Rigidbody2D.MovePosition or Rigidbody2D.MoveRotation. 这种组件只与                                         Dynamic物体相碰撞。 a Kinematic Rigidbody 2D behaves like an immovable object (as if it has infinite mass)                                      during collisions。

       3. Static 只会与 Dynamic Rigidbody object 碰撞。被挂载的物体可看成immovable object。

       ps: 当物体只挂载Collider 2D component,没有rigidbody时,默认是static状态。

触发器:作为触发器的物体不再是物理上的固体,允许其他物体从中穿过.

collider 碰撞器 1. 有刚体:碰撞的力 与 脚本施加的力都会对物体作用。

       2. 动力学刚体:如果想要不受碰撞的力,但同时想通过脚本移动,和碰撞检测,则添加刚体后勾选Kinematic。

       3. 无刚体: 没有挂载刚体的collider->静态碰撞器所挂载的物体不能有移动和位置改变。 

碰撞体也需要材质,用于处理碰撞的力,creat->physics material (物理材质)  与渲染材质不同。

 

posted on 2022-07-25 00:46  ReadyLoveMiku  阅读(64)  评论(0编辑  收藏  举报