- 之前遇到一个问题,做了一个enemy,他可以发射子弹,这个enemy上挂一个collider 2D,然后子弹bullet_2有一个collider 2D,我又做了一个player,player也有自己的子弹bullet_1,然后player有一个collider,player的子弹有一个collider,这就有四个collider了。
- 我将这些gameobject都分到不同的层里面,有enemy层,enemyBullet层,player层,playerBullet层,然后将它们之间的一些碰撞去除。
- 然后,我将敌人生成的子弹设置到敌人enemy的父级下面,就是这里出了问题。
- 当敌人发射子弹时,没有问题,敌人子弹打到player也没问题,但当player子弹打到敌人时就有问题了,敌人的子弹在行进中会停顿卡顿甚至静止,然后子弹再前进。
- 初步怀疑,是敌人子弹被设为敌人父级下面时,子弹会受到父级collider的影响。也就是子弹身上变成有两个collider,一个是子弹自己的collider,一个是父级的collider,这样就造成了混乱。
- 当我将子弹从父级移出来,这个问题就消失了,但具体原因还是没有完全弄懂,如有大佬知道原因,麻烦留言评论一下,不胜感激。
|