碰撞器Collider
在场景中选择一个物体Cube 观察检查器Inspector 自带Cube会默认挂载盒子碰撞器Box Colilider
![](https://file.jishuzhan.net/article/1715005166127681537/0d227ce9947a1c646fd3cb51080e4fda.webp)
增加组件可以增加更多中碰撞器
![](https://file.jishuzhan.net/article/1715005166127681537/7eae4d2f1693f029540c5c5026796a62.webp)
Edit Collider 编辑碰撞器形状
![](https://file.jishuzhan.net/article/1715005166127681537/a76c88015b0ab40ef05487e87615a72f.webp)
Is Trigger选项
![](https://file.jishuzhan.net/article/1715005166127681537/b4def752acd86a3028caf7639c47bc17.webp)
Is Trigger :是否是触发器,如果启用此属性 则该碰撞体将用于触发事件,并被物理引擎忽略
主要用于进行没有物理效果的碰撞检测
当我们【开启Is Trigger】 Cube下落会变成穿透地面 也就是说【不会产生碰撞】
![](https://file.jishuzhan.net/article/1715005166127681537/bf9d3059426a8723b02c71f293f05155.webp)
Center :碰撞器在对象局部空间中的中心点位置
![](https://file.jishuzhan.net/article/1715005166127681537/1e9eae0cfd874ddd14fc38a34ab4ee73.webp)
我们可以通过调整xyz的位置来调节该物体的中心点碰撞位置 通常用在不规则物体
![](https://file.jishuzhan.net/article/1715005166127681537/710bb843c45bce5b094ca62ad4271f1d.webp)
我们在场景上创建一个球体Sphere
![](https://file.jishuzhan.net/article/1715005166127681537/bcc7e68fc3a44353a5b70d0bc5b7a30d.webp)
我们看到球体 有【Radius】半径 也就是【碰撞体的尺寸大小】
![](https://file.jishuzhan.net/article/1715005166127681537/640a1531703e855897aab63e5985d439.webp)
当我们改变碰撞体大小的时候
![](https://file.jishuzhan.net/article/1715005166127681537/d124df9c471d2fd0fb249b4faeae50b8.webp)
用一个未开启Is Trigger的物体去碰撞他会被球的碰撞器大小弹开
![](https://file.jishuzhan.net/article/1715005166127681537/f1fc1fca1761581939ec0237c81ae9d5.webp)
同理 盒状碰撞器等也是一样
![](https://file.jishuzhan.net/article/1715005166127681537/ae76a103d0388a30c2c4cb4ebac18b23.webp)
胶囊也是一样
![](https://file.jishuzhan.net/article/1715005166127681537/ff7db13d3af85b4d71198d0679b8dff8.webp)
重点:组合物体使用多种碰撞器 :刚体对象的子对象碰撞器信息参与碰撞检测
我们对Cube创建一个空子物体
![](https://file.jishuzhan.net/article/1715005166127681537/1b48ada86abe010ce3a562e4c8ca9903.webp)
对这个空子物体增加一个Collider碰撞器组件
![](https://file.jishuzhan.net/article/1715005166127681537/2b56bcb2286d47a5b598caf185b8eb21.webp)
通过Transform更改位置和形状
![](https://file.jishuzhan.net/article/1715005166127681537/81a01bc3143b111fe08b219122c1ed13.webp)
复制一个放在左侧
![](https://file.jishuzhan.net/article/1715005166127681537/4c9d18d1acfcf4847a8dde790ef713f6.webp)
运行即可看到效果 Cube被空子物体撑在了地面上
![](https://file.jishuzhan.net/article/1715005166127681537/baeafbde00c1c01412221896af385750.webp)
【父刚子碰】:
也就是说 父物体挂载刚体Rigidbody 所有子物体都会产生刚体 通常子物体做碰撞器父物体做刚体
此外还有一些不常用的碰撞器:
Wheel Collider :环状碰撞器 用于制作赛车
Mesh Collider :物体形状 = 网格碰撞器形状
![](https://file.jishuzhan.net/article/1715005166127681537/fd3265b07d18246a823c70fb626f04da.webp)
我们在场景中创建一个圆柱体
![](https://file.jishuzhan.net/article/1715005166127681537/087e1845b8a37fcde2fb6942e3fc1e46.webp)
我们通过切换网格世界可以看出 圆柱体的默认碰撞器是胶囊类型的
![](https://file.jishuzhan.net/article/1715005166127681537/0f040bcf0103b27d49022949cdf1300a.webp)
我们移除圆柱体默认的胶囊碰撞器
![](https://file.jishuzhan.net/article/1715005166127681537/3911945216547ed2dcc6694292d6543b.webp)
添加一个Mesh Collider 我们可以看出物体与碰撞器完全重合 与其他物体一样
需要注意的是要手动添加网格,当然系统自带的圆柱体有自动添加的功能
![](https://file.jishuzhan.net/article/1715005166127681537/3aeb0b490e085b49afe7b4633632a157.webp)
我们切回实体世界 如果想让网格碰撞器发生碰撞 需要勾选 Convex
![](https://file.jishuzhan.net/article/1715005166127681537/d90070b251f37948e1060f70d207a58b.webp)
只有勾选了Convex才能产生力的作用
网格碰撞器下的不必要计算选项
![](https://file.jishuzhan.net/article/1715005166127681537/f25697d1fab019be5003dad2ffdb5251.webp)
下面对物理材质进行讲解:
![](https://file.jishuzhan.net/article/1715005166127681537/1b78bfa93b34367240e1d028710bf79b.webp)
首先我们在Materials文件包建一个物理材质
![](https://file.jishuzhan.net/article/1715005166127681537/6bc2568e75da260b3426dd7832bde5c7.webp)
Phy Material 其中动静摩擦为0 其用力后可无限移动,前提物体的Phy Material和地面的Phy Materials都要挂载物理材质
![](https://file.jishuzhan.net/article/1715005166127681537/976d21c3c043e4062fd46870b425c9eb.webp)
![](https://file.jishuzhan.net/article/1715005166127681537/9b4ceb660dd2c84eedda03884dfb4fe5.webp)
运行后调整Cube碰撞后 会没有摩擦一直移动
![](https://file.jishuzhan.net/article/1715005166127681537/cfd97f6ff037af28ffebf8464875eaf5.webp)
Bounciness 弹力 弹力范围0~1 如果是1就不会有能量损耗无限弹
![](https://file.jishuzhan.net/article/1715005166127681537/e8c62031ddb39218d06118d0da712abf.webp)
![](https://file.jishuzhan.net/article/1715005166127681537/fbb92c762c658231d49fb1f4d795bb5e.webp)