本文主要是介绍Unity - 物理材质(Physic Material),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
Unity - Physic Material
参考文献:https://docs.unity3d.com/Manual/class-PhysicMaterial.html
Physic Material 用于调整碰撞体对象的摩擦力和弹力效果。
当两个物体发生碰撞时,所产生的碰撞效果同时受到这两个物体的Physic Material的影响。两个Physic Material的混合方式在 Friction Combine 和 Bounce Combine属性中设置。如果两个Physic Material的混合方式不一样,那么则按照以下的优先级进行混合:Maximum > Multiply > Minimum > Average。
属性 | 功能 |
---|---|
Dynamic Friction | 作用于运动中的对象的摩擦力,通常设为0到1之间的值。值为0时,对象像冰块一样光滑;值为1时,不受力(合力为0)的对象将很快停止运动。 |
Static Friction | 作用于静止在其他物体表面的对象的摩擦力,通常设为0到1之间的值。值为0时,对象像冰块一样容易滑动;值为1时,需要施加很大的力才能使对象开始运动。 |
Bounciness | 对象的表面弹性。值为0时,对象完全没有弹力;值为1时,对象变为具有完全弹性的理想刚体(在碰撞过程中完全不随损失能量)。 |
Friction Combine | 发生碰撞的两个碰撞体对象的摩擦力的混合方式。 Maximum - 取两个对象的摩擦力的最大值。 Multiply - 取两个对象的摩擦力相乘后的值。 Minimum - 取两个对象的摩擦力的最小值。 Average - 取两个对象的摩擦力的平均值。 |
Bounce Combine | 发生碰撞的两个碰撞体对象的弹力的混合方式。其参数与Friction Combine的参数相同。 |
补充:如果将两个带有物理材质的立方体堆叠放置,直接修改
transfrom.position
来移动下面的立方体时,上面的立方体不会因为受到摩擦力而一起移动。要使用Rigidbody的AddForce()
方法给下面的立方体施加力使其移动,或者通过Rigidbody的velocity
属性为下面的立方体设置速度,上面的立方体才能跟着一起移动。
这篇关于Unity - 物理材质(Physic Material)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!