Unity - 物理材质(Physic Material)

本文详细介绍了Unity中的PhysicMaterial组件,解释了如何通过调整摩擦力和弹力等属性来改变碰撞体的行为。包括DynamicFriction、StaticFriction、Bounciness的作用及FrictionCombine和BounceCombine的混合方式。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Unity - Physic Material

参考文献:https://docs.unity3d.com/Manual/class-PhysicMaterial.html

Physic Material 用于调整碰撞体对象的摩擦力和弹力效果。
当两个物体发生碰撞时,所产生的碰撞效果同时受到这两个物体的Physic Material的影响。两个Physic Material的混合方式在 Friction CombineBounce Combine属性中设置。如果两个Physic Material的混合方式不一样,那么则按照以下的优先级进行混合:Maximum > Multiply > Minimum > Average
Physic Material属性

属性功能
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 来移动下面的立方体时,上面的立方体不会因为受到摩擦力而一起移动。要使用RigidbodyAddForce() 方法给下面的立方体施加力使其移动,或者通过Rigidbody的 velocity 属性为下面的立方体设置速度,上面的立方体才能跟着一起移动。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值