Unity的碰撞检测
程序员文章站
2024-03-15 22:18:36
...
1.产生碰撞的条件
1.碰撞双方都要有碰撞器组件Box collider
2.运动的一方要有刚体组件Rigibody
3.有一方勾选is Trigger
在在做贪吃蛇游戏的时候是蛇头的gameObject有碰撞组件,刚体,并勾选了is Trigger,食物的gameObject的带来碰撞组件,并给食物设置了一个tag为Food,所以有了下面判断。
private void OnTriggerEnter2D(Collider2D collision)//吃掉食物
{
if (collision.gameObject.CompareTag("Food"))
{
Destroy(collision.gameObject);
Grow();
FoodMaker.Instance.MakeFood(Random.Range(0, 100) < 20 ? true : false); //有百分之二十的机会生成奖励
MainControl.Instance.UpdateUI();
}
}