我想使用统一碰撞系统消灭敌人,有时候必须运行良好,问题是当我有很多敌人时,屏幕上大约有30个。子弹刚好经过一些敌人。
我尝试过在RigidBody2D和BoxCollider2D上更改变量,这些变量设置为运动学并在连续碰撞时触发,但似乎没有任何作用
这是我在C#中的代码
public void CheckForEnemyCollisionWithArrows(GridMap gridMap)
{
for (int i = 0; i < spawnedEnemies.Count; i++)
{
for (int j = 0; j < projectiles.Count; j++)
{
if (
spawnedEnemies[i].boxCollider.IsTouching(projectiles[j].boxCollider)
&& !IntMask.Query(spawnedEnemies[i].flag, (int)EnemyFlags.IS_DYING)
)
{
spawnedEnemies[i].SetEnemyFlag(EnemyFlags.WAS_HIT_TO_DEATH);
projectiles[j].wasDestroyed = true;
}
}
}
}