I'm using the Unity5 game engine and am programming a 2D shooter in bird's eye view.
I have a static Box Collider 2D which covers the entire game area.
It has "Is Trigger" checked and contains a very simple script which should destroy every object that exits it.
using UnityEngine;
using System.Collections;
public class DestroyByBoundary : MonoBehaviour {
void OnTriggerExit(Collider other) {
Debug.Log ("OnTriggerExit");
Destroy (other.gameObject);
}
}
The player character shoots bullets which have a dynamic Circle Collider 2D.
However, the bullets are never destroyed when they leave the game area and just fly on indefinitely. The debug statement never gets executed either, of course. I have tried the same thing with OnTriggerEnter, which yields the same result.
If any more information should be needed, I'll be happy to provide it.
OnTriggerExit2D
and see if that solves the problem. \$\endgroup\$