碰撞检测——碰撞器和物理材质

关于碰撞器

所谓碰撞器就是碰撞检测器,它用来表示物体的体积或形状,刚体会利用体积进行碰撞计算来模拟真实的碰撞效果,从而产生力的作用。

3D碰撞器有多个种类,分别为盒状、球状、胶囊、网格、车轮和地形六种类型。盒状、球状和胶囊这三种类型在平常的使用中准确性较低,但性能更高,而网格、轮胎和地形这三种类型在使用时准确性较高,但性能更低,所以我们通常会选择性能高的前三种来解决问题。

添加时他们的英文名分别是:Box Collider(盒状碰撞器)、Sphere Collider(球状碰撞器)、Capsult Collider(胶囊碰撞器)、Mesh Collider(网格碰撞器)、Wheel Collider(车轮碰撞器)和Terrain Collider(地形碰撞器)。

Box Collider(盒状碰撞器)

盒装碰撞体默认是矩形长方体,大多用于木板或箱子等物品。

Collider(球状碰撞器)

碰撞体可以通过 Radius 属性调整大小,但不能沿三个轴独立缩放。除了用于网球等球形物体外,该碰撞器还适用于坠落的巨石和其他需要滚动和翻滚的物体。

Capsult Collider(胶囊碰撞器)

我们可以相互独立的调整胶囊对撞机的半径和高度。它通常用于字符控制器中,也可以与其他碰撞体组合以获得不同寻常的形状。值得一提的是多个物体(即组合物体)同时参与碰撞时,会使用刚体对象的子对象碰撞器信息来参与碰撞检测。

Mesh Collider(网格碰撞器)

网格碰撞体的本质就是引用网格来计算碰撞,通常用于某些角色或者场景物体等精细的碰撞。

Wheel Collider(车轮碰撞器)

该碰撞器大多用以实现车辆模拟,它可以模拟车辆的前进后退,刹车,转向,打滑等情况。

Terrain Collider(地形碰撞器)

该属性通常用于改善地形和球体之间的相互作用。

我们在使用这六种碰撞器时会发现,他们都有几个共同的参数,分别是Is Trigger、Material和Center这三个参数。

Is Trigger:是否是触发器,系统默认情况下为非勾选状态。勾选该选项后,该碰撞体将用于触发事件,并被物理引擎忽略。该选项主要用于没有物理效果的碰撞检测。

Material:物理材质选择框,它决定了碰撞器和其他对象碰撞时的交互方式。

Center:用于显示碰撞体在对象局部空间中的中间点位置。

关于物理材质

物理材质的创建方法非常简单,在项目列表的空白处右击选择Physic Material即可创建。此时我们就可以将自己设置好的材质拖到碰撞体的Materal中进行关联,当碰撞体进行碰撞或移动时,就会采用材质上设置的参数进行计算。

物理材质默认情况下是这样的:

动态摩擦力

正在移动时使用的摩擦力。通常为0到1之间的值。值为0的时候就会像冰一样,值为1的时候将会使对象迅速静止,除非用很大的力或重力推动对象。

静态摩擦力

当对象静止在表面上时使用的摩擦力。通常为0到1之间的值。值为0的时候就会像冰一样,值为1的时候将会使对象很难移动。

弹力

即表面的弹性。值为0时将不会反弹,值为1时将在反弹时不产生任何能量损失,预计会有一些近似值,但可能只会给模拟增加少量能量。

摩擦组合

即两个碰撞对象的摩擦力的组合方式。有四个选项,分别为平均、最小、乘法和最大。

反弹合并

即两个碰撞对象的弹性的组合方式。有四个选项,分别为平均、最小、乘法和最大。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Js_x

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值