Unity之2D碰撞器
1、什么是碰撞器
碰撞器是用于在物理系统中 表示物体体积的的(形状或范围)
刚体通过得到碰撞器的范围信息进行计算
判断两个物体的范围是否接触
如果接触 刚体就会模拟力的效果产生速度和旋转
2、参数
Edit Collider:编辑碰撞器
Material:一种物理材质,用于确定碰撞的属性,控制摩擦和弹性
Is Trigger:是否是触发器
Used By Effector:是否被附加的2D效应器使用
Used By Composite:将碰撞器附加到2D复合碰撞器
Auto Tiling:SpriteRenderer中DrawMode为Tile平铺模式时,碰撞器会跟随精灵大小改变
Edge Radius:使角变为圆角
3、复合碰撞器参数
(1)Geometry Type:几何学类型,合并碰撞体时,碰撞体顶点将组合为两种不同的几何体类型
Outlines:空心轮廓,类似边界碰撞器
Polygons:实心多边形,类似多边形碰撞器
(2)Generation Type:生成类型,复合碰撞器在何时生成新几何体
Synchronous:对2D复合碰撞器或使用的其它碰撞器修改时,Unity立即生成新几何体
Manual:手动生成新几何体,通过代码生成或者点击下发的Regenerate Geometry生成按钮
(3)Vertex Distance:从复合碰撞器收集顶点时允许的最小间距值
4、碰撞检测函数
private void OnCollisionEnter2D(Collision2D collision)
{
//进入碰撞
}
private void OnCollisionExit2D(Collision2D collision)
{
//退出碰撞
}
private void OnCollisionStay2D(Collision2D collision)
{
//碰撞中
}
private void OnTriggerEnter2D(Collider2D collision)
{
//触发
}
private void OnTriggerExit2D(Collider2D collision)
{
}
private void OnTriggerStay2D(Collider2D collision)
{
}